簡體   English   中英

從文件中讀取字符串到C中的結構數組

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM