#include <stdio.h>#define N 100long StrToLong(char *p)...{ char Temp[N]=...{0}; long ReturnNum=0; int i=0; int sign=0; while(*p==' ') ...{ p++; } if(*p=='-') ...{ sign = 1; } while((Temp[i]=*p++)!=0) ...{ if((Temp[i]>='0')&&(Temp[i]<='9')) ReturnNum = ReturnNum*10 + (Temp[i]-48); i++; } if(sign) ...{ ReturnNum = -ReturnNum; } return ReturnNum;}void main()...{ char *q=" -12345"; long Number=StrToLong(q); printf("%ld ",Number);} 自己需要一个这样的小程序,在网上搜啊搜啊,就是没有合适的,综合了一下,自己写了一个,编译通过,有些地方需要完善,不对的地方请各位大虾指教。 :)