本文中调用的四个函数如下:
atoi函数:将字符串转化为int类型变量
atol函数:将字符串转化为long类型变量
atoll函数:将字符串转化为long long类型变量
atof函数:将字符串转化为double类型变量
这些函数的转化过程,都是将一个字符串的可读部分取到变量中
遇到不可读的部分,则直接终止读取
调用示例:
#include
#include
#define Seperate(); printf("n=============nn");
int main()
{
Seperate();
//atoi
printf("atoi: string to integern");
const char* s00 = "1234567890";
printf("%s -> %dn", s00, atoi(&s00[0]));
const char* s01 = "123.4";
printf("%s -> %dn", s01, atoi(&s01[0]));
const char* s02 = "xyz";
printf("%s -> %dn", s02, atoi(&s02[0]));
const char* s03 = "1234xyz";
printf("%s -> %dn", s03, atoi(&s03[0]));
Seperate();
//atol
printf("atol: string to longn");
const char* s10 = "1234567890123";
printf("%s -> %ldn", s10, atol(&s10[0]));
const char* s11 = "123.4";
printf("%s -> %ldn", s11, atol(&s11[0]));
const char* s12 = "xyz";
printf("%s -> %ldn", s12, atol(&s12[0]));
const char* s13 = "1234xyz";
printf("%s -> %ldn", s13, atol(&s13[0]));
Seperate();
//atoll
printf("atoll: string to long longn");
const char* s20 = "1234567890123";
printf("%s -> %lldn", s20, atoll(&s20[0]));
const char* s21 = "123.4";
printf("%s -> %lldn", s21, atoll(&s21[0]));
const char* s22 = "xyz";
printf("%s -> %lldn", s22, atoll(&s22[0]));
const char* s23 = "1234xyz";
printf("%s -> %lldn", s23, atoll(&s23[0]));
Seperate();
//atof
printf("atof: string to doublen");
const char* s30 = "1234567890";
printf("%s -> %lfn", s30, atof(&s30[0]));
const char* s31 = "123.4";
printf("%s -> %lfn", s31, atof(&s31[0]));
const char* s32 = "xyz";
printf("%s -> %lfn", s32, atof(&s32[0]));
const char* s33 = "1234xyz";
printf("%s -> %lfn", s33, atof(&s33[0]));
Seperate();
return 0;
}
运行效果:
END