当前位置:首页 » 服务器技术
开发技术指南» 文章正文
    引言: 很多人对C/C++中的整型不太了解,导致代码移植的时候出现问题,
 

 

    摘要:普通类对象的内存布局首先我们从普通类对象的内存布局开始。c000为一个空类,定义如下:struct c000{}; 运行如下代码打印它的大小及对象中的内容。print_size_detail(c000) 结果为:the size of c000 is 1the detail of c000 is cc 可以看到它的大小为1字节,这是一个占位符。我们可以看到它的值是0xcc。在debug模式下,这表......
 ·函数对象概述    »显示摘要«
    摘要:顾名思义,就是在某种方式上表现得象一个函数的对象。典型地,它是指一个类的实例,这个类定义了应用操作符operator()。 函数对象是比函数更加通用的概念,因为函数对象可以定义跨越多次调用的可持久的部分(类似静态局部变量),同时又能够从对象的外面进行初始化和检查(和静态局部变量不同)。例如:class sum { int val; public:sum(int i) :val(i) { }oper......


C/C++中的整型常识

很多人对c/c++中的整型不太了解,导致代码移植的时候出现问题,本人在此总结一下:

b. c/c++中整型包括:int, char 与 enum, c++中还包含bool类型,c99中bool是一个宏,实际为_bool; 【程序编程相关:MBGA

a. c/c++对整型长度的规定是为了执行效率,将int定义为机器字长可以取得最大的执行速度; 【推荐阅读:.NET Remoting编程简介

d. 修饰整型正负的有 signed 与 unsigned,对于 int 默认为 signed; 【扩展信息:TSOPII

c. c 与 c++ 对 enum 的规定有所不同,这里不描述;

e. 修饰 int 大小的有 short 与 long, 部分编译器还扩展了一些更长的整型,比如 long long 与 __int64, c99中增加了long long与unsigned long long;

f. int 的长度 与 机器字长相同, 16位的编译器上int长16位,32位的编译器上int长32位;

g. short int 的长度 小于等于 int 的长度,注意她们可能长度相等,这取决于编译器;

h. long int 的长度 大于等于 int 的长度,注意她们可能长度相等,这取决于编译器;

i. char 的长度应当可以包容得下一个字符,大部分系统中就是一个字节,而有的系统中可能是4个字节,因为这些系统中一个字符需要四个字节来描述;

j. char 的正负取决于编译器,而编译器的决定取决于操作系统,在不同的编译器中char可能等同于signed char,也可能等同于unsigned char;

总结:


...   下一页
 ·linux上搭建c/c++ide开发环境    »显示摘要«
    摘要:redhat linux上面没有提供anjuta软件包,上面提供了一个glade应用程序界面设计工具。linux上面使用anjuta和glade以及glademm软件包可以搭建一个linux下面进行c/c++软件开发的ide环境,可以进行gtk+/gnome的应用程序开发。 以前开发 linux 程序时写出好的图形化用户界面比较难。在 gimp 工具包 (gtk)诞生之后,这件事就变得比较容易......
» 本期热门文章:

©2000-2007 All Rights Reserved. 最佳浏览:1024X768 MSIE