#include<stdio.h>
#include<stdlib.h>
int myatoi(const char *str){
int result = 0;
int signal = 1;
if((*str>='0'&&*str<='9')||*str=='-'||*str=='+'){
if(*str=='-'||*str=='+'){
if(*str=='-')
signal = -1;
str++;
}
}else
return 0;
while(*str>='0'&&*str<='9'){
result = result*10 + (*str++ - '0');
}
return signal*result;
}
char *myitoa(int num,char*str,int radix){
char index[]="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";
unsigned unum;
int i=0,j,k;
int temp;
if(radix==10&&num<0){
unum = (unsigned)-num;
str[i++]='-';
}else
unum = (unsigned)num;
do{
str[i++] = index[unum%(unsigned)radix];
unum /= radix;
}while(unum);
str[i] = '\0';
if(str[0]=='-') k=1;
else k = 0;
for(j=k;j<=(i-1)/2.0+k;j++){
temp = str[j];
str[j] = str[i-j-1+k];
str[i-j-1+k] = temp;
}
return str;
}
int main(){
int m,n;
int mm,nn;
char *str = "32";
char arr[] = "-32546";
m = atoi(str);
n = atoi(arr);
mm = myatoi(str);
nn = myatoi(arr);
char strm[10];
char stra[10];
itoa(m,strm,10);
printf("strm=%s\n",strm);
itoa(255,stra,16);
printf("stra=%s\n",stra);
printf("m=%d\tmm=%d\n",m,mm);
printf("n=%d\tnn=%d\n",n,nn);
printf("hello\n");
return 0;
}
atoi
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.