| 
					阅读:1921回复:10
				 c语言代码到VC++的转换
					我在调试一段驱动代码,将所需函数放在一个lib文件中,在C下已经编译成功.但在VC++中包含该库进行编译时,出现错误提示:
 unexpected end of file while looking for precompiled header directive. 注:该lib文件的执行体为.c文件,不是.cpp. 怀疑是c跟VC++有些不兼容,是不是在包含过程中要有些新的设置. 请高手指点,急!!!!!!! | |
| 沙发#发布于:2005-01-21 14:39 
					请包含“StdAfx.h”头文件				 | |
| 
 | 
| 板凳#发布于:2005-01-21 15:29 
					我已经include了stdafx.h文件,但仍然出现这个错误提示.				 | |
| 地板#发布于:2005-01-21 18:36 
					Not using precompiled headers				 | |
| 地下室#发布于:2005-01-22 09:00 
					在工程文件中设置一下试一试				 | |
| 5楼#发布于:2005-01-22 09:41 
					Not using precompiled headers
 没事别用STDAFX | |
| 
 | 
| 6楼#发布于:2005-01-25 11:51 
					在工程里设置一下!				 | |
| 7楼#发布于:2005-03-01 10:21 
					把使用预编译头文件的编译选项去掉				 | |
| 
 | 
| 8楼#发布于:2005-03-01 12:24 在工程里设置一下! 在工程设置里加入lib文件。 | |
| 9楼#发布于:2005-03-04 16:54 
					头文件,lib				 | |
| 10楼#发布于:2005-03-05 23:56 我在调试一段驱动代码,将所需函数放在一个lib文件中,在C下已经编译成功.但在VC++中包含该库进行编译时,出现错误提示: 和我刚学vc时遇到的一样:) snowStart 说得对,要包括stdafx.h;其实和precompiled header并没有直接关系;和lib的执行体也没有关系,c++是支持c和c++两种外部调用的。 根据你项目的情况,可能还需要增加头文件。 比如你了一个名为abc的对话框项目,那么你的abcDlg.cpp里可能会有如下代码, #include \"stdafx.h\" #include \"abc.h\" #include \"abcDlg.h\" 你是不是新增了一个自己的cpp文件,如果是的话,就需要将前面三行代码拷贝到新生成的cpp文件里。否则就会出现你所说的提示。 如果你没有生成新的文件而出现了这样的错误,那就应该重新生成一个新的项目,再测试。 引用库文件时,除了要将lib文件加入project setting里,还有一个要点,就是在#include \"xxx.h\" 要放到stdafx.h中,而且要放到 ///////////////////////////////////////////////////////////////////////////// //{{AFX_INSERT_LOCATION}} // Microsoft Visual C++ will insert additional declarations immediately before the previous line. 之前,这是由于“与编译”功能在作怪:) 还有,如果你的windows是xp,你有可能还需要在stdafx.h的第一行增加#define _WIN32_WINNT 0x0501,否则你在调用很多api时会告诉你链接错误或者找不到函数。 | |
| 
 | 
 
							
 
				 
				 
				 
				