1. 程式人生 > >由預編譯頭而引出的錯誤的解決辦法

由預編譯頭而引出的錯誤的解決辦法

 在編譯VC++6.0是,出現fatal error C1010: unexpected end of file while looking for precompiled header directive
的錯誤.

解決方法:

1、如果發生錯誤的檔案是由其他的C程式碼檔案新增進入當前工程而引起的,則Alt+F7進入當前工程的 Settings,選擇C/C++選項卡,從Category組合框中選中Precompiled Headers,選擇Not Using Precompiled headers。確定。

2、在檔案開頭新增:
#include "stdafx.h"

  對預編譯標頭檔案說明如下:  
   
  所謂標頭檔案預編譯,就是把一個工程(Project)中使用的一些MFC標準標頭檔案(如Windows.H、Afxwin.H)預先編譯,以後該工程編譯時,不再編譯這部分標頭檔案,僅僅使用預編譯的結果。這樣可以加快編譯速度,節省時間。  
   
  預編譯標頭檔案通過編譯stdafx.cpp生成,以工程名命名,由於預編譯的標頭檔案的字尾是“pch”,所以編譯結果檔案是projectname.pch。  
   
  編譯器通過一個頭檔案stdafx.h來使用預編譯標頭檔案。stdafx.h這個標頭檔案名是可以在project的編譯設定裡指定的。編譯器認為,所有在指令#include   "stdafx.h"前的程式碼都是預編譯的,它跳過#include   "stdafx.   h"指令,使用projectname.pch編譯這條指令之後的所有程式碼。  
   
  因此,所有的CPP實現檔案第一條語句都是:#include   "stdafx.h"。