7、c++将一个整数字符串转换为一个整数,如“-1234”转换为-1234
时间: 2023-05-23 18:06:31 浏览: 93
A:可以使用以下的代码实现:
```c
#include <stdio.h>
int str_to_int(char* str) {
int sign = 1, num = 0;
if (*str == '-') {
sign = -1;
str++;
}
while (*str != '\0') {
if (*str >= '0' && *str <= '9') {
num = num * 10 + (*str - '0');
}
str++;
}
return sign * num;
}
int main() {
char str[] = "-1234";
int num = str_to_int(str);
printf("%d\n", num);
return 0;
}
```
在这个代码中,我们首先判断整数的符号,如果是负数,则记录符号为-1,并去掉字符串中的负号。然后从字符串的第一位开始遍历,只有遇到数字字符时才进行转换,将其累加到num变量中。最后返回num乘以符号即可。
阅读全文