字符串转换为整数
来源:互联网 发布:美白水知乎 编辑:程序博客网 时间:2024/05/22 06:17
一般将字符串转换为整数有2种方式,一种是用std的库函数,一种就是一步一个脚印来实现了。
1、用库函数实现
<span style="font-family:Comic Sans MS;">#include <iostream>#include <string.h>#include <iomanip> using namespace std;int main(void){char a[]="-100"; char b[]="456"; int c; c = atoi(a)+atoi(b); //输出356cout << dec << c << endl; return 0; }</span>注意了,atoi是将字符串转换为整数,也有很多库函数将字符串转换为浮点数,长整形数等,自己可在IDE里调用并查看。同理,整数转化为字符串也有相应的库函数itoa等,原来什么事情都有两面性啊!
这里调试程序的时候发现了一个小问题,即warning:no newline at end of file,很多人不去注意这个警告,其实解决这个问题很简单,在程序的末尾再输一下enter就可以了。原因就是编译器的设计,别人是这么设计的,我们就只管遵循即可。
2、不用库函数实现
<span style="font-family:Comic Sans MS;">#include <iostream>using namespace std;//不使用库函数将字符串转换为数字int str2int(const char *str){int num=0,dig=1;if (str==NULL){return -1;}while (*str==' '){ //滤掉开头的空格str++;}if (*str=='+'){str++;}if (*str=='-')//如果开头有"-"使dig=-1{str++;dig*=-1;}while (*str!='\0'){num=num*10+((*str++)- '0');if (*str<'0'||*str>'9')//如果遇到非数字则跳出循环{break;}}num*=dig;return num;}int main(void){int num=0;char str[10];cin >> str; num=str2int(str);cout<<num<<"\n";return 0;}</span>其实,以上str++和++str已经没有分别了,因为str的值是一样的就可以了,不在乎表达式的结果。在这里str++的表达式和++str的表达式的结果是不同的,相差1。
0 0
- 字符串转换为整数
- 字符串转换为整数
- 字符串转换为整数
- 字符串转换为整数
- 字符串转换为整数
- 字符串转换为整数
- 字符串转换为整数
- 字符串转换为整数
- 字符串转换为整数
- 字符串转换为整数
- 整数转换为字符串
- 字符串转换为整数
- 字符串转换为整数
- 整数转换为字符串
- 字符串转换为整数
- 字符串转换为整数
- 字符串转换为整数
- 字符串转换为整数
- CComboBox
- javafX初探(按钮)
- android调用系统分享实现朋友圈同时分享文字和图片(可多张)
- 论证select count(*)和select count(1)
- memcache的一致性hash算法使用
- 字符串转换为整数
- scripts/local脚本mount_root脚本文件分析
- 块设备驱动分析及编写
- 庄阻姿专住做锥资撞走准滓追诅籽宗佐赘
- 如何理解java采用Unicode编码
- UVA 11151
- 发送标准广播
- MySQL 5.6.14 win32 zip版安装
- fds fgdfds