我一直在尝试学习C,并且想知道:如何在C中获得长度未知的字符串?我找到了一些结果,但是不确定如何应用。
答案 0 :(得分:0)
如果可以接受标准的扩展名,请尝试POSIX getline()
。
文档示例:
#include <stdio.h>
#include <stdlib.h>
int main(void)
{
FILE *fp;
char *line = NULL;
size_t len = 0;
ssize_t read;
fp = fopen("/etc/motd", "r");
if (fp == NULL)
exit(1);
while ((read = getline(&line, &len, fp)) != -1) {
printf("Retrieved line of length %zu :\n", read);
printf("%s", line);
}
if (ferror(fp)) {
/* handle error */
}
free(line);
fclose(fp);
return 0;
}