ASCII表
itoa函数
版本1
先实现一个简单版本,只是把整型数字转化为字符串
需要两个点注意:
- 为0的情形
- 为负数的情形
- 返回值为指针便于链式操作
char* my_itoa( int val, char* str ){
if(!str){
fprintf( stderr, "Invalid arguments!" );
return NULL;
}
if(!val){
str[0] = 48;
str[1] = 0;
return str;
}
bool flag = (val>=0)?true:false;
if(!flag) val *= -1;
char buf[32];
memset(buf, 0, sizeof(buf));
int idx = 0;
while( val ){
int tmp = val%10;
val /= 10;
buf[idx++] = tmp + 48;
}
int new_idx = 0;
if(!flag) str[new_idx++] = '-';
while(--idx>= 0){
str[new_idx++] = buf[idx];
}
str[new_idx] = 0;
return str;
}