代码改变世界

对C++的atoi(),substr(),c_str(),itoa()函数的理解

2013-03-26 21:12  Keiven_LY  阅读(1347)  评论(0编辑  收藏  举报

①atoi()函数原型为: int atoi(char *str),用途是将字符串转换成一个整数值,str是待转化成整数值的字符串.成功则返回转化后的整数值,失败返回0. 备注:该函数的头文件是"stdlib.h"
②substr()函数原型为:basic string::substr(string,start,length),也可把string移到外面,为string &a,a.substr(start,length),其中a是待截取的字符串,start表示从截取开始的前一位,length表示截取长度,例如string 
③&a="hello world",则a.substr(6,5)=world.
④c_str()函数原型为:const char *c_str(),如果要将string对象,转化为char*对象,c_str()提供了这样一种方法,它返回一个客户程序可读不可改的指向字符数组的指针。
⑤itoa()函数原型为:char *itoa(int value, char *string, int radix); 功 能:把一整数转换为字符串。其中value为要转化的整数, radix是基数的意思,即先将value转化为radix进制的数,之后在保存在string中.
备注:该函数的头文件是"stdlib.h"
如1:
year=atoi(dateStr.substr(0,4).c_str())的作用就是,截取string型的对象dateStr,并转化为char*对象,然后将此字符串转换成一个整数值,赋值给year(year是int型).
如2:
int number = 123456;
char string[25];
itoa(number, string, 10);