#include<stdio.h>
#include<string.h>
#include<math.h>
#define SIZE 100
//字符串转整型函数
int StringToInt(char* str) {
int res = 0, len = strlen(str), p = len,flag=0;
for (int i = 1;i < len;i++) {
if (str[i] < '0' || str[i]>'9') {
return 0; //若除首元素外字符串中出现非整型数字,函数则直接返回0
}
else {
flag = 1; //若除首元素外字符串均为整型数字,则用flag=1做标记
}
}
if (str[0] != '-' && flag == 1) { //正整型数情况
for (int i = 0;i < len;i++) {
res += ((int)(str[i]) - 48) * pow(10, p - 1);
p--;
}
return res;
}
else if (str[0] == '-'&& flag == 1) { //负整型数情况
p -= 1; //负数情况时,除去被负号'-'占据的第一位
for (int i = 1;i < len;i++) {
res += ((int)(str[i]) - 48) * pow(10, p - 1);
p--;
}
return -res;
}
}
int main() {
char str[SIZE];
gets_s(str);
int res = StringToInt(str);
printf("res=%d\n", res);
return 0;
}
字符串转整型数字的函数--C语言实现
最新推荐文章于 2023-12-10 17:19:12 发布