2017-05-15 58 views
-2

我有一個文件列表。對於這些文件中的每一個,我需要確定兩個字符是否是 - '#!'。我該怎麼做呢?如何從文件中讀取幻數?

+7

閱讀兩個字符。檢查第一個是'#',第二個是'!'。 –

+2

'#!'對我來說看起來不像一個數字......甚至不是神奇的一個。 –

+0

我試過了,但我弄不清符號。 – alessiovolpe

回答

2

裝入兩個數字使用fgetc()(如@WilliamPursell建議),然後對它們進行比較:

int i1, i2; 
FILE *file; 

file = fopen("yourfile", "rb"); 
if (file == NULL) { 
    printf("Error: failed to open file"); 
    return 1; 
} 
i1 = fgetc(file); 
i2 = fgetc(file); 

// 23h...#, 21h...! 
if (i1 == 0x23 && i2 == 0x21) { 
    // magic number 
} 
+0

也許檢查'fopen'的返回值 –

+0

我故意忽略它,因爲它不是問題的焦點。 – redxef

+2

我認爲寫無錯代碼也是問題的重點 –