怎么将字符串类型转换成int型?初学者简单方法
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了怎么将字符串类型转换成int型?初学者简单方法相关的知识,希望对你有一定的参考价值。
C++中
如果你不想用atoi()函数,可以自己写一个函数来转换,原理如下:比如你要转换的字符串为"4243":
1.先获得字符串长度为4
2.循环获得每个字符
对于每个字符都减去'0',即asiic码的差值,比如第一个字符为'4','4'-'0' = 4,结果为整数,拿4*10^4(这个4为字符串长度) = 4000
再加上后面每次获得的数即可 参考技术A C语言库函数名: atoi
功 能: 把字符串转换成整型数。
名字来源:ASCII to integer 的缩写。
原型: int atoi(const char *nptr);
函数说明: 参数nptr字符串,如果第一个非空格字符存在,并且,如果不是数字也不是正负号则返回零,否则开始做类型转换,之后检测到非数字(包括结束符 \0) 字符时停止转换,返回整型数。
头文件: #include <stdlib.h>
程序例:
#include <stdlib.h>
#include <stdio.h>
int main(void)
int n;
char *str = "12345.67";
n = atoi(str);
printf("string = %s integer = %d\n", str, n);
return 0;
执行结果:
string = 12345.67 integer = 12345追问
我学的C++ 不是C语言
追答一样可以使用啊 包含所需要的头文件即可调用。
本回答被提问者和网友采纳 参考技术Batoi(const char *nptr);
C语言库函数名: atoi(把字符串转换成整型数。)
函数说明: 参数nptr字符串,如果第一个非空格字符存在,并且,如果不是数字也不是正负号则返回零,否则开始做类型转换,之后检测到非数字(包括结束符 \\0) 字符时停止转换,返回整型数。
//参考代码如下:#include <stdlib.h>
#include <stdio.h>
int main()
int n;
char *str = "12345";
n = atoi(str);
printf("%d\\n",n);
return 0;
/*
执行结果:
12345
*/ 参考技术C C语言库函数名: atoi
功 能: 把字符串转换成整型数。
名字来源:ASCII to integer 的缩写。
原型: int atoi(const char *nptr);
函数说明: 参数nptr字符串,如果第一个非空格字符存在,并且,如果不是数字也不是正负号则返回零,否则开始做类型转换,之后检测到非数字(包括结束符 \0) 字符时停止转换,返回整型数。
头文件: #include <stdlib.h> 参考技术D 是ASCII码转还是数组里本身就是数字呢
如果数组本身就是就是数字,我推荐用atoi函数
增加头文件
#include<stdlib.h>
只需要一个参数
就是数组的名字
例子
#include <stdlib.h>
#include <stdio.h>
int main(void)
int n;
char *str = "12345.67";
n = atoi(str);
printf("string = %s integer = %d\n", str, n);
return 0;
执行结果:
string = 12345.67 integer = 12345
PS:C语言C++也可以使用。
也可以
#include<cstdlib>
using namespace std;
以上是关于怎么将字符串类型转换成int型?初学者简单方法的主要内容,如果未能解决你的问题,请参考以下文章