你好我試圖做一個簡單的程序,將讀取文本和存儲到一個字符串,並最終返回到我稱爲我的功能。我到目前爲止是這樣的:閱讀文件並存儲到一個字符串
void crawler() {
FILE *file;
char line[256], letra[256];
int j = 0;
file = fopen("teste.txt", "r");
letra[j] = fgetc(file);
j++;
while (fgets(line, sizeof(line), file)) {
for(int i = 0; line[i] != 00; i++)
{
if(line[i] == 46)
{
if(line[i+1] == 46)
{
letra[j] = " ";
j++;
}
}
else
{
letra[i] = line[i];
j++;
}
}
}
但我不知道這是否是正確的方法。我應該使用malloc做一個動態Char嗎?我試圖做什麼的最佳方法是什麼?
[編輯]
即時得到在這一行錯誤:letra[j] = " ";
兼容的指針到整數的轉換
你不返回任何東西,也不要被誘惑來回報您的緩衝區的地址,因爲它是在堆棧上,而且將成爲無效儘快你回來。所以是的,我會'malloc'一個緩衝區。 –
你爲什麼要移動讀取的數據?首先你將它讀入'line'中,然後將它複製到'letra'中。爲什麼和爲了什麼? – ForceBru
關於46的特別之處是什麼? – chux