C语言将字符串转成整数
时间: 2023-10-08 07:09:45 浏览: 199
可以使用C语言标准库函数`atoi()`将字符串转成整数。
`atoi()`函数的定义如下:
```c
int atoi(const char *str);
```
它的参数`str`是一个指向以NULL结尾的字符串的指针。`atoi()`函数会将这个字符串转成一个整数,并返回这个整数。如果字符串无法转成整数,则返回0。
例如,下面的代码将字符串`"12345"`转成整数:
```c
int num = atoi("12345");
printf("%d\n", num); // 输出:12345
```
需要注意的是,如果字符串中包含不能转成数字的字符,`atoi()`函数会停止转换,并返回已经转换的整数。例如,下面的代码将字符串`"123abc"`转成整数:
```c
int num = atoi("123abc");
printf("%d\n", num); // 输出:123
```
如果字符串以空格或制表符开头,则`atoi()`函数会忽略这些空格或制表符,并从第一个非空格或非制表符的字符开始转换。例如,下面的代码将字符串`" 12345"`转成整数:
```c
int num = atoi(" 12345");
printf("%d\n", num); // 输出:12345
```
如果字符串以正号或负号开头,则`atoi()`函数会将正号或负号后面的数字转换成整数,并返回这个整数。例如,下面的代码将字符串`"-12345"`转成整数:
```c
int num = atoi("-12345");
printf("%d\n", num); // 输出:-12345
```
需要注意的是,`atoi()`函数只能将字符串转成int类型的整数。如果需要转换成其他类型的整数(如long、long long等),则需要使用其他函数。
阅读全文