atoi的用法

atoi的用法,第1张

函数名: atoi

功 能: 把字符串转换成长整型数

用 法: #include <stdlibh>

int atoi(const char nptr);

程序例:

#include <stdlibh>

#include <stdioh>

int main(void)

{

int n;

char str = "1234";

n = atoi(str);

printf("string = %s integer = %d\n", str, n);

return 0;

}

运行结果是:

string =1234 integer=1234

如果我没理解错的话,你把CString类型的东西直接存入外部文件就是你要看到的数字了啊。。

你转换成为int之后,直接存到外部文件里的是那个int数所代表的ASCII码,自然很可能是乱码,你可以用格式化字符串的方法来转换,比如:

int ixx = 10;//是你要写入文件的int型变量

CString strTemp;//

strTempformat("%d", ixx);//

printf();//把strTemp写入文件就行

////////////////////////////////////////

//或者直接写

printf(fp, "%d", ixx);

C语言中,可以使用atoi函数将字符串转换为数字,如atoi("123")可以得到数字123。

atoi (表示 ascii to integer)是把字符串转换成整型数的一个函数,应用在计算机程序和办公软件中。int atoi(const char nptr) 函数会扫描参数 nptr字符串,会跳过前面的空白字符(例如空格,tab缩进)等。

如果 nptr不能转换成 int 或者 nptr为空字符串,那么将返回0。特别注意,该函数要求被转换的字符串是按十进制数理解的。atoi输入的字符串对应数字存在大小限制(与int类型大小有关),若其过大可能报错-1。

C语言中数字转化为字符串的方案:

使用sprintf函数来实现,如sprintf("%d", 123)可以得到字符串"123"。

sprintf指的是字符串格式化命令,主要功能是把格式化的数据写入某个字符串中。sprintf 是个变参函数。使用sprintf 对于写入buffer的字符数是没有限制的,这就存在了buffer溢出的可能性。解决这个问题,可以考虑使用 snprintf函数,该函数可对写入字符数做出限制。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/langs/12162917.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-21
下一篇2023-05-21

发表评论

登录后才能评论

评论列表(0条)

    保存