c++里面的atoi
时间: 2024-03-27 22:31:08 浏览: 57
C++里的atoi函数是将字符串转换为整数的函数。它的原型定义在stdlib.h头文件中,其函数原型为:int atoi(const char *str)。该函数会扫描参数str字符串,跳过前面的空格字符,直到遇上数字或正负符号才开始做转换,而再遇到非数字或字符串结束时('\0')才结束转换,并将结果返回。如果str不能转换成int或者str为空字符串,则返回0。
相关问题
有如下字符串“nodel_1_md_19981120_100336.log", 写一段简洁的C++代码,从字符串中提取出nodel_后面的字符"1",并将这个字符转换成整型数字
以下是C语言代码:
```c
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main() {
char str[] = "nodel_1_md_19981120_100336.log";
char *p = strstr(str, "nodel_") + strlen("nodel_");
int num = atoi(p);
printf("%d\n", num);
return ;
}
```
解释一下代码:
首先定义了一个字符串 `str`,里面存放了要处理的字符串。
然后用 `strstr` 函数找到字符串中第一次出现 "nodel_" 的位置,再加上这个字符串的长度,就得到了 "nodel_" 后面的字符 "1" 的位置。
接着用 `atoi` 函数将这个字符转换成整型数字。
最后用 `printf` 函数输出这个数字。
运行程序,输出结果为:
```
1
```
阅读全文