1、fatal error LNK1112: 模块计算机类型“X86”与目标计算机类型“x64”冲突
可能的解决方案:项目名右键,点击清理。
2、windows下查看exe和dll依赖及版本位数
解决方案:在vs安装目录下,我的路径为为D:\vs2013\Common7\Tools\Shortcuts下打开 VS2013 x86 本机工具命令提示或VS2013 x64 本机工具命令提示
查看依赖项,在命令行下输入
dumpbin /dependents dll或exe文件绝对路径
查看版本位数,在命令行下输入
dumpbin /headers dll或exe文件绝对路径
3、error C2146: 语法错误: 缺少“;”(在标识符“Buffer”的前面) C:\Program Files (x86)\Windows Kits\8.1\Include\um\winnt.h
error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int C:\Program Files (x86)\Windows Kits\8.1\Include\um\winnt.h
解决方案:在StdAfx.h文件中前面添加代码
#ifndef POINTER_64
#if !defined(_MAC) && (defined(_M_MRX000) || defined(_M_AMD64) || defined(_M_IA64)) && (_MSC_VER >= 1100) && !(defined(MIDL_PASS) || defined(RC_INVOKED))
#define POINTER_64 __ptr64
typedef unsigned __int64 POINTER_64_INT;
#if defined(_WIN64)
#define POINTER_32 __ptr32
#else
#define POINTER_32
#endif
#else
#if defined(_MAC) && defined(_MAC_INT_64)
#define POINTER_64 __ptr64
typedef unsigned __int64 POINTER_64_INT;
#else
#if (_MSC_VER >= 1300) && !(defined(MIDL_PASS) || defined(RC_INVOKED))
#define POINTER_64 __ptr64
#else
#define POINTER_64
#endif
typedef unsigned long POINTER_64_INT;
#endif
#define POINTER_32
#endif
#endif
4、error C4996: ‘fopen’: This function or variable may be unsafe. Consider using fopen_s instead.
及类似报错 This function or variable may be unsafe
解决方案:
工程属性页->配置属性->c/c++->预处理器->预处理器定义->编辑
添加代码
_CRT_SECURE_NO_WARNINGS
5、判断文件是否存在
if(access(filename, 0) ==0)
{
printf("file exist");
}
else
{
printf("no file");
}