C#到C++--C#转型C++之路(一)C

2015-07-20 17:49:46 · 作者: · 浏览: 3

全职学习,要下很大的决心来做。有人会说,为什么不边工作边学习。确实,每个人都有自己的路,我选的就是走向技术底层,迅速的。所以,我经过长时间考虑,依然选择全职学习。


既然学习C/C++ 就要先学习C.

常量:

C的常量跟C#不同,当然,C#的语法是微软封装过的。C的常量通过#define 来定义,也就是C里的宏。它的本质就是编译器 预编译阶段进行文本替换。将#define定义的宏,替换到使用该宏的位置。

而const 在C#中才是定义常量的关键字。但是C中,const定义的是 只读的变量,而且必须在定义时赋值,否则就不能再赋值了。


++ 与--:

自增与自减。

int i=10;
int a=i++ + i;
i=10;
int b= ++i + i;

上面这段代码,在C#中a=21,b=22;因为 i++ 在C#中是 下次使用变量时 自增操作生效。


在C中,这段代码a=20 b=22

这个跟C#不同的是 i++ 是在表达式执行完成后 再给i自增。

就是说 i++ + i 在C中 i++ 等于10, 由于表达式尚未执行,所以 i 的值还是10 。 所以 i++ + i 其实就是 10+ 10



long

在C中 long 类型,在32位操作系统下跟int 类型同样是4个字节。在大多数64位操作系统中,是8个字节。但是 long long 都是8个字节的。