有多种方法可以检索字符串输入,例如getline()
或fgets()
,但所有这些方法都需要字符串的大小作为参数。但是,如果我想要检索未知大小的字符串呢?如何在C中使用getline()
或fgets()
?
答案 0 :(得分:2)
答案是否定的。你无法读取一串不确定的长度。但是,您可以一次读取一个字符,直到达到在程序中分配的存储空间大小。在循环中使用fgetc。
int fgetc(FILE *stream)
打开流,一次读取一个字符,并在看到你的哨兵角色时停止阅读,这可能是换行符。