C语言中怎样最好地从标准输入流中获取字符串,并转换为int数组?

 我来答
无奈去游戏
2016-05-26 · TA获得超过158个赞
知道小有建树答主
回答量:125
采纳率:100%
帮助的人:79.9万
展开全部





#include <stdio.h>
 #include <stdlib.h>  
int main () {     
 int i;     
 char buffer[256];     
 printf ("Enter a number: ");     
 fgets (buffer, 256, stdin);     
 i = atoi (buffer);    
    printf ("The value entered is %d.", i);      
 system("pause");     
 return 0; 
}

其实你的需求很简单只要是用atoi函数就可以轻松的转换string到数组了,我用以上的一小段代码就可以解释明白你的疑惑。没看明白在问我吧!

执行结果:
Enter a number: 233cyuyan
The value entered is 233.

函数说明如下:

头文件:#include <stdlib.h>

atoi() 函数用来将字符串转换成整数(int),其原型为:
int atoi (const char * str);

【函数说明】atoi() 函数会扫描参数 str 字符串,跳过前面的空白字符(例如空格,tab缩进等,可以通过 函数来检测),直到遇上数字或正负符号才开始做转换,而再遇到非数字或字符串结束时('\0')才结束转换,并将结果返回。

【返回值】返回转换后的整型数;如果 str 不能转换成 int 或者 str 为空字符串,那么将返回 0

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式