2013-07-04 45 views
-1

我想讀取.txt文件。我收到以下錯誤,即使我已經給出了正確的路徑:文件 - 我收到錯誤而不是提供正確的路徑

Error1: File is undeclared first time use in function 

Error2: file is undeclated first time use in function 

\U它正在爲轉義序列。請指導我。

#include <stdio.h> 
#include <stdlib.h> 
int main(int argc, char *argv[]) 
{ 
    File *file = fopen("C:\Users\Admin\Desktop\files.txt", "r"); 
    char c; 
    do 
    { 
     c = fgetc(file); 
     printf("%c",c); 
    } 
    while (c != EOF)  
    fclose(file); 
    system("PAUSE"); 
    return 0; 
} 
+1

對於這樣的一些代碼,它是一些工作使其格式正確。正確格式化的代碼是對讀者的尊重問題。 – alk

+0

我會非常小心的使用一個產生「文件被取消覆蓋」的編譯器作爲錯誤信息。您正在使用剪切和粘貼來顯示錯誤消息,對嗎? –

回答

1

你必須逃離所有的反斜線寫"C:\\Users\\Admin\\Desktop\\files.txt"

4

File *file應該是FILE *file

fopen("C:\Users\Admin\Desktop\files.txt", "r");應該fopen("C:\\Users\\Admin\\Desktop\\files.txt", "r");

4

此:

File *file = fopen("C:\Users\Admin\Desktop\files.txt", "r"); 

有兩個錯誤:

  1. FILE類型的拼寫類似的是,在全部大寫。請記住C區分大小寫。
  2. 字符串中的反斜槓用於轉義控制字符,如果需要文字反斜槓,則必須加倍。

所以,它應該是:

FILE *file = fopen("C:\\Users\\Admin\\Desktop\\files.txt", "r"); 
3
  • 變化FileFILE
  • 變化while (c != EOF);while(!feof(file));
  • 添加分號;while後。
  • 更改單反斜線\以雙反斜線\\

您的代碼現在的樣子:

FILE *file = fopen("C:\\Users\\Admin\\Desktop\\files.txt", "r"); 
char c; 
do 
{ 
     c = fgetc(file); 
     printf("%c",c); 
} 
while(!feof(file)); 
fclose(file); 

system("PAUSE"); 
return 0; 

測試此代碼和它完美的作品:)

相關問題