[英]reading strings from file to struct array in C
我试图从文件中读取字符串并将它们添加到我的结构数组中,但是当我这样做时,我在一两个字符串的末尾得到一些随机字符。这是我逐行读取字符串的代码:
while ((read = getline(&line, &len, fp)) != -1) {
strncpy(&structures[i].id,line,4); //copies the first four characters to my array of structures
...
}
当我打印出structure [0] .id时,它会打印“ WW23”。它应该只是“ WW23”。它使用几个字符串(尽管不是全部)来完成。 我的结构看起来像这样。
struct observers
{
char id[13];
...
};
它至少可以正确读取文件中的整数值。
您没有终止字符串。 在末尾structures[i].id[4] = '\\0'
。 它应该工作正常。
您可能需要添加“ \\ 0”作为第5个字符来终止字符串。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.