c++ MFC int与CString互转

 int s = 123; 

CString str;

str.Format("%d",s); 

这样就可以了,但是有的会提示这个错误

如果出现这个错误,就改成下面这个就OK了:
  str.Format(_T("%d"), s);


FROM:http://liguo125.blog.51cto.com/1995200/448711



 CString 型转化成 int 型  把 CString 类型的数据转化成整数类型最简单的方法就是使用标准的字符串到整数转换例程。

  虽然通常你怀疑使用_atoi()函数是一个好的选择,它也很少会是一个正确的选择。如果你准备使用 Unicode 字符,你应该用_ttoi(),它在 ANSI 编码系统中被编译成_atoi(),而在 Unicode 编码系统中编译成_wtoi()。你也可以考虑使用_tcstoul()或者_tcstol(),它们都能把字符串转化成任意进制的长整数(如二进制、八进制、十进制或十六进制),不同点在于前者转化后的数据是无符号的(unsigned),而后者相反。

所以直接使用函数_ttoi就可以了。

    nIndex = _ttoi(str);


FROM: http://blog.csdn.net/wletv/article/details/6333445


转载链接:http://blog.csdn.net/imxiangzi/article/details/37969353





C语言atoi()函数:将字符串转换成int(整数)


头文件:#include <stdlib.h>

atoi() 函数用来将字符串转换成整数(int),其原型为:
int atoi (const char * str);

【函数说明】atoi() 函数会扫描参数 str 字符串,跳过前面的空白字符(例如空格,tab缩进等,可以通过  isspace()  函数来检测),直到遇上数字或正负符号才开始做转换,而再遇到非数字或字符串结束时('\0')才结束转换,并将结果返回。

【返回值】返回转换后的整型数;如果 str 不能转换成 int 或者 str 为空字符串,那么将返回 0。

温馨提示:ANSI C 规范定义了  stof() atoi() atol() strtod() strtol() strtoul()  共6个可以将字符串转换为数字的函数,大家可以对比学习。另外在 C99 / C++11 规范中又新增了5个函数,分别是 atoll()、strtof()、strtold()、strtoll()、strtoull(),在此不做介绍,请大家自行学习。

范例:将字符串a 与字符串b 转换成数字后相加。
    
    
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. int main ()
  4. {
  5.     int i;
  6.     char buffer[256];
  7.     printf ("Enter a number: ");
  8.     fgets (buffer, 256, stdin);
  9.     i = atoi (buffer);
  10.     printf ("The value entered is %d.", i);
  11.     system("pause");
  12.     return 0;
  13. }
执行结果:
Enter a number: 233cyuyan
The value entered is 233.




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值