fgets(s,buff_size,stdin)

题目的语句是什么意思?(宏定义如下)
#define buff_size 1024
这个语句的功能用gets可以实现吗?

从标准输入设备(就是键盘)读入一串字符,包括空白等符号在内。
读入到 字符数组 s 里,读入最大长度为 1024 字节。

这个语句的功能可以用gets实现,区别在于 fgets 读入的含 "\n"(最后一个字符),gets 不含 "\n"。

#define buff_size 1024
char *s;
s = (char*) malloc(buff_size * sizeof(char));
fgets(s,buff_size,stdin);
// 或 gets(s);

例如拍入:
abc 123 xyz +-*/ Z
fgets 得到"abc 123 xyz +-*/ Z\n"
gets 得到"abc 123 xyz +-*/ Z"
温馨提示:答案为网友推荐,仅供参考
第1个回答  2009-06-15
stdin :是标准输入设备的文件指针,也就是键盘
S:是目的字符数组的指针,
这句话的意思是从键盘读入一个长度小于1024字符串放到S里;
相似回答