怎么将字符串类型转换成int型?初学者简单方法

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了怎么将字符串类型转换成int型?初学者简单方法相关的知识,希望对你有一定的参考价值。

如果你不想用atoi()函数,可以自己写一个函数来转换,原理如下:
比如你要转换的字符串为"4243":
1.先获得字符串长度为4
2.循环获得每个字符
对于每个字符都减去'0',即asiic码的差值,比如第一个字符为'4','4'-'0'
=
4,结果为整数,拿4*10^4(这个4为字符串长度)
=
4000
再加上后面每次获得的数即可
参考技术A 如果你不想用atoi()函数,可以自己写一个函数来转换,原理如下:
比如你要转换的字符串为"4243":
1.先获得字符串长度为4
2.循环获得每个字符
对于每个字符都减去'0',即asiic码的差值,比如第一个字符为'4','4'-'0'
=
4,结果为整数,拿4*10^4(这个4为字符串长度)
=
4000
再加上后面每次获得的数即可
再看看别人怎么说的。
参考技术B 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语言库函数名:
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型?初学者简单方法的主要内容,如果未能解决你的问题,请参考以下文章

如何将char类型转换成int类型?

jsp里如何用强制类型转换把string类型转换成int型?

NSData类型转换成NSString类型

c语言里怎么把float转换为char型?

如何将有符号的long型转换成无符号的long型

c#中怎么将string转换成int型