int* Bob = atoi(BobPtr.c_str());
^ this str has a value i want to covert to a int*
Any ideas on how to do this, in C, or ASM ?
P.S. How do you guess do you EPCs?
C++ Problems
RE:C++ Problems
I think you ment
int Bob = atoi(BobPtr.c_str());
well, you need to write a parser for it: it is VERY simple, like this:
int atoi(char *buf){
int n=0;
int i;
for(i=0;;i++){
int a;
if( (a=char2int(buf[i])) == -1)break;
n = n*10+a;
}
return n;
}
int char2int(char a){
switch(a){
case '0':return 0;
....
case '9':return 9;
default: return -1;
}
}
Anton
int Bob = atoi(BobPtr.c_str());
well, you need to write a parser for it: it is VERY simple, like this:
int atoi(char *buf){
int n=0;
int i;
for(i=0;;i++){
int a;
if( (a=char2int(buf[i])) == -1)break;
n = n*10+a;
}
return n;
}
int char2int(char a){
switch(a){
case '0':return 0;
....
case '9':return 9;
default: return -1;
}
}
Anton
RE:C++ Problems
Doesn't C have the ability to convert char to there ASCII equalent???? Then if looking at it to make the number '1' just minus the places amount of the value '0' hold in ASCII???? Just a guess though....
Benjamin
Benjamin
RE:C++ Problems
int atoi(char * z){
int x,i,n=0,h=0;
x=sizeof(z);
for(i=x-2;i>=0;i--){
h+=((int)z[i]-(int)'0') * (int)pow(10,n);
n++;
}
return h;
}
Good example of what I am talking about... Part of my old/new OS titled Nodis...
int x,i,n=0,h=0;
x=sizeof(z);
for(i=x-2;i>=0;i--){
h+=((int)z[i]-(int)'0') * (int)pow(10,n);
n++;
}
return h;
}
Good example of what I am talking about... Part of my old/new OS titled Nodis...
RE:C++ Problems
First, It will parse "123dasdad" incorectly.
Second, (int)z[i]-(int)'0' is a programming trick, i will confuse the reader who asked the question.
Third, It is not a good programming style to asume something about lowlevel architecure. For example, if it used unnicode chars, then you will have a problem.
Anton.
Second, (int)z[i]-(int)'0' is a programming trick, i will confuse the reader who asked the question.
Third, It is not a good programming style to asume something about lowlevel architecure. For example, if it used unnicode chars, then you will have a problem.
Anton.
RE:C++ Problems
Quick and dirty atoi()-like example
int matoi(const char *p)
{
int i, result = 0, x = 0;
if(p[i = 0] == '-') { x++; i++; }
while(p[i])
{
if((p[i] - '0') > 9)
{
i++;
continue;
}
result = (result * 10) + (p[i++] - '0');
}
return (x ? -(result) : result);
}
int matoi(const char *p)
{
int i, result = 0, x = 0;
if(p[i = 0] == '-') { x++; i++; }
while(p[i])
{
if((p[i] - '0') > 9)
{
i++;
continue;
}
result = (result * 10) + (p[i++] - '0');
}
return (x ? -(result) : result);
}
RE:C++ Problems
No you guys don't understand my problem, look to my latest post as of 10/17/2002