把字符串转换成整型数 函数说明: atoi()会扫描参数nptr字符串,检测到第一个数字或正负符号时开始做类型转换,之后检测到非数字或结束符 /0 时停止转换,返回整型数。 一个实现代码: int my_atoi(const char *str) { int result= 0; bool signal = false; if((*str>='0'&&*str<='9')||*str=='-'||*str=='+') { if(*str=='-'||*str=='+') { if(*str=='-') signal = true; str++; } } else return 0; while(*str>='0'&&*str<='9') result = result*10+(*str++ -'0'); return signal?-result:result; } 使用 c中。 #include <stdlib.h> #include <stdio.h> int main(void) { int n; char *str = "12345.67"; n = atoi(str); printf("string = %s integer = %d/n", str, n); return 0; }