- 1、本文档共53页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基于QT的跨平台C开发基础
* 增强可移植性:在ACE组件的帮助下,很容易在一种OS平台上编写并发网络应用,然后快速地将它们移植到各种其他的OS平台上。而且,因为ACE是开放源码的自由软件,你无需担心被锁定在特定的操作系统平台或编译器上。 更好的软件质量:ACE的设计使用了许多可提高软件质量的关键模式,这些质量因素包括通信软件灵活性、可扩展性、可复用性和模块性。 更高的效率和可预测性:ACE经仔细设计,支持广泛的应用服务质量(QoS)需求,包括延迟敏感应用的低响应等待时间、高带宽应用的高性能,以及实时应用的可预测性。 * ARM(Advanced RISC Machines)是微处理器行业的一家知名企业,设计了大量高性能、廉价、耗能低的RISC处理器、相关技术及软件。技术具有性能高、成本低和能耗省的特点。适用于多种领域,比如嵌入控制、消费/教育类多媒体、DSP和移动式应用等 * IA架构(Intel、AMD)的CPU中是Little-Endian,而PowerPC 、SPARC和Motorola处理器是Big-Endian。这其实就是所谓的主机字节序。 而网络字节序是指数据在网络上传输时是大头还是小头的,在Internet的网络字节序是BIG-ENDIAN。所谓的JAVA字节序指的是在JAVA虚拟机中多字节类型数据的存放顺序,JAVA字节序也是BIG-ENDIAN。 在用C/C++写通信程序时,在发送数据前务必用htonl和htons去把整型和短整型的数据进行从主机字节序到网络字节序的转换,而接收数据后对于整型和短整型数据则必须调用ntohl和ntohs实现从网络字节序到主机字节序的转换 UNIX编程-编译 使用vi编辑文件,生成.cpp或.h等文件 编译命令cc gcc –o ex1 ex1.c ex1lib.c 或者 gcc –c ex1.c cc –o ex1lib.c gcc –o ex1 ex1.o ex1lib.o -I 包含头文件路径,-i 包含头文件名 -L 包含库的路径,-l包含的库的名称 UNIX编程-编译 make 必须用描述文件说明模块间的依赖性。缺省的描述文件名称为makefile或Makefile。 描述文件描述了不同模块之间的依赖关系。起始字符为“#”的行是注释行。描述文件中的依赖形式为: target: components TAB rule 第一行称为依赖性,第二行称为规则。描述文件中规则行的第一个字符必须是TAB字符。一个依赖性可能接着一个或多个规则行。 UNIX编程-编译 [例]:在上面的例子里,依赖关系如下: ex1: ex1.o ex1lib.o gcc-o ex1 ex1.o ex1lib.o ex1.o: ex1.c gcc –c ex1.c ex1lib.o:ex1lib.c gcc –c ex1lib.c UNIX编程-调试 调试工具gdb、dbx、ladebug 信息输出 在一个程序崩溃时,它一般会在您的主目录下转储一个core文件。core文件仅仅是一个内存映象(同时加上调试信息),主要是用来调试的。 UNIX编程-调试 当程序接收到以下UNIX信号会产生core文件: ? SIGABRT 调用abort函数时产生此信号。进程异常终止。 ? SIGBUS 指示一个实现定义的硬件故障。 ? SIGEMT 指示一个实现定义的硬件故障。EMT这一名字来自PDP-11的emulator trap 指令。 ? SIGFPE 此信号表示一个算术运算异常,例如除以0,浮点溢出等。? ? SIGILL 此信号指示进程已执行一条非法硬件指令。4.3BSD由abort函数产生此信号。SIGABRT现在被用于此。 ? SIGIOT 这指示一个实现定义的硬件故障。IOT这个名字来自于PDP-11对于输入/输出TRAP(input/output TRAP)指令的缩写。系统V的早期版本,由abort函数产生此信号。SIGABRT现在被用于此。 UNIX编程-调试 ? SIGQUIT 当用户在终端上按退出键(一般采用Ctrl-\)时,产生此信号,并送至前台进程组中的所有进程。此信号不仅终止前台进程组(如SIGINT所做的那样),同时产生一个core文件。 ? SIGSEGV 指示进程进行了一次无效的存储访问。名字SEGV表示“段违例(segmentation violation)”。 ? SIGSYS 指示一个无效的系统调用。由于某种未知原因,进程执行了一条系统调用指令,但其指示系统调用类型的参数却是无效的。 ? SIGTRAP 指示一个实现定义的硬件故障。此信号名来自于PDP-11的TRAP指令。 ? SIGXCPU SVR4和4.3+BSD支持资源限制的概念。如果进程超过了
文档评论(0)