C语言实现字符串转数字
时间: 2024-04-14 18:19:00 浏览: 92
要在C语言中实现字符串转数字的功能,可以使用以下代码段:
```c
#include <stdio.h>
#include <stdlib.h>
long myAtoi(const char *str) {
int sign = 1;
long result = 0;
if (*str == '-') {
sign = -1;
str++;
}
while (*str) {
if (*str >= '0' && *str <= '9') {
result = result * 10 + (*str - '0');
str++;
} else {
break; // 遇到非数字字符则结束循环
}
}
return sign * result;
}
int main() {
char str[] = "12345";
long num = myAtoi(str);
printf("转换后的数字为:%ld\n", num);
return 0;
}
```
该代码段定义了一个名为`myAtoi`的函数,用于将字符串转换为数字。该函数首先判断字符串是否有负号,然后通过循环遍历字符串中的每个字符,将字符转换为数字并计算结果。最后,根据负号标志位返回最终结果。在`main`函数中,可以调用`myAtoi`函数并将转换后的数字打印出来。
请注意,这只是一种实现方法,还有其他方法可以实现相同的功能。
阅读全文