【发布时间】:2014-02-16 21:01:34
【问题描述】:
我对 c 还很陌生,一直在试图弄清楚如何将整数转换为一串数字,这就是我目前所拥有的:
long long int inputNum = 0;
char str [20];
int len = 0;
printf("Please enter the integer to be converted,\nit should be no more than 10 digits long: \n");
scanf("%d", &inputNum);
sprintf(str,"%d", inputNum);
len = strlen(str);
printf("%d", len);
return 0;
但是我遇到了一个问题,如果输入的 int 长度超过 10 个字符,程序仍然会说长度是 10。我不确定这是否是数据类型的问题(例如 long long int)或者是否我只是不恰当地执行字符串。
【问题讨论】:
-
len=sprintf(str,... -
scanf("%lld", &inputNum); printf("%lld", inputNum); -
打印出转换后的字符串你就知道原因了