Linux C++代码移植到Windows要解决的问题
来源:互联网 发布:网络攻击防御 编辑:程序博客网 时间:2024/04/27 19:54
1、新建一个Win32项目,将所有源文件复制到项目文件夹中,并添加到工程中。
2、直接编译会出现错误:fatal error C1010: unexpected end of file while looking for precompiled header directive
致命错误C1010:在寻找预编译指示头文件时,文件未预期结束。
就是没有找到预编译指示信息的头文件。
问题一般发生在:通过添加文件的方式,添加了一些cpp文件到一个MFC的程序,但该cpp文件并不是MFC,而是标准的C++。
解决方案1: 右键单击项目工程中的cpp文件,在菜单Project->Settings->C/C++->Precompile Header,设置为第一项:Not using precompile headers。
解决方案2: 在.cpp文件开头添加包含文件stdafx.h。 #include"stdafx.h"
3、平台相关头文件宏定义
#ifdef WIN32
#include <time.h> //win32下的头文件
#endif
#ifdef UNIX
#include <sys/time.h> //Linux下的头文件
#endif
4、源代码文件格式问题
错误提示:error C4335: Mac file format detected: please convert the source file to either DOS or UNIX.
解决方案:将文本内容复制到Word,之后再创建一个TXT文件将Word的内容复制出来,即过滤掉格式,再将这个TXT文件替换原来的文件。
5、提示警告: warning C4996: 'sprintf' was declared deprecated 。
解决方案:
VC6:选项Project | Configuration Properties | C/C++ | Preprocessor | Preprocessor Definitions ,添加_CRT_SECURE_NO_DEPRECATE和_SCL_SECURE_NO_DEPRECATE两个宏。
VS2005 :项目属性---C/++ --->预处理定义下-》配置 -》下面添加_CRT_SECURE_NO_DEPRECATE和_SCL_SECURE_NO_DEPRECATE两个宏。
6、vs2005 类型错误:warning C4267: 'initializing' : conversion from 'size_t' to 'int', possible loss of data
查MSDN得: size_t unsigned integer Result of sizeof operator. STDDEF.H and other include files
出现C4276 warning是因为测试 32位代码的64位兼容性问题而出现的警告,由/WP64开关控制,默认是打开的。
size_t 是针对系统定制的一种数据类型,一般是整形,因为C/C++标准只定义一最低的位数,而不是必需的固定位数。而且在内存里,对数的高位对齐存储还是低位对齐存储各系统都不一样。为了提高代码的可移植性,就有定议le 这样的数据类型。
size_t 在32位系统上定义为 unsigned int,在64位系统上定义为 unsigned long.
STDDEF.H的内容
#ifndef _SIZE_T_DEFINED
#ifdef _WIN64
typedef unsigned __int64 size_t;
#else
typedef _W64 unsigned int size_t;
#endif
#define _SIZE_T_DEFINED
#endif
解决方法:项目->属性->C/C++->检测64位可移植性问题 -->设置成否
- Linux C++代码移植到Windows要解决的问题
- Socket 编程 windows到Linux代码移植遇到的问题
- 几个 Windows 到 Linux 的代码移植问题
- Socket 编程 windows到Linux代码移植遇到的问题
- Socket 编程 windows到Linux代码移植遇到的问题
- 几个 Windows 到 Linux 的代码移植问题
- 几个 Windows 到 Linux 的代码移植问题
- 几个 Windows 到 Linux 的代码移植问题
- Windows到Linux系统代码移植遇到的问题
- 几个 Windows 到 Linux 的代码移植问题
- Socket 编程 windows到Linux代码移植遇到的问题
- Windows 到 Linux 代码移植的常见问题
- windows到Linux代码移植
- linux代码移植到windows
- 将Linux代码移植到Windows的简单方法
- 将Linux代码移植到Windows的简单方法
- Linux代码移植到Windows的简单方法(转)
- 将Linux代码移植到Windows的简单方法
- simple list
- 设计模式--工厂模式
- 屏幕关闭原因以及p-sensor
- 毕业后的五年拉开大家差距的原因
- 省赛总结
- Linux C++代码移植到Windows要解决的问题
- NSNotification详解
- mysql bin log 分析
- javascript中的with语句
- 开源日志收集系统
- 获取指定网站的内容
- Android中UI线程与后台线程交互设计的方法
- Linux修改文件及文件夹权限
- C++ 关键字 typename