题目:
输入一个表示整数的字符串,把该字符串转换成整数并输出。
例如输入字符串"345",则输出整数 345。
C语言基础题。直接写代码了
代码实现(GCC编译通过):
#include "stdio.h"
#include "stdlib.h"
//返回1表示转换成功,0表示失败。char[]是原字符串,int *存放目标地址
int changeStrToNum(char str[],int * tag);
int main(void)
{
char str[] = {'+','1','2','3','4'};
int tag;
if(changeStrToNum(str,&tag) == 1)
printf("%3d\n",tag);
else
printf("ERROR!");
return 0;
}
int changeStrToNum(char str[],int * tag)
{
char * p = str;
int flag = 1;
* tag = 0;
//若有'+'号
if(*p == '-')
{
p++;
flag = -1;
}//若有'-'号
else if(*p == '+')
{
p++;
}
//遍历处理
while(*p != '\0' && *p > '0' && *p < '9')
{
* tag = *tag *10 +(*p++ - '0');
}
if(*p != '\0')
return 0;
else
{
*tag = *tag * flag;
return 1;
}
}