如何将Vim打造成C/C++的半自动化IDE
发布时间:2016-10-12 19:09:50 所属栏目:Linux 来源:网络整理
导读:C语言在Linux系统中的重要性自然是无与伦比、不可替代,所以我写Linux江湖系列不可能不提C语言。C语言是我的启蒙语言,感谢C语言带领我进入了程序世界。虽然现
|
相当于明确告诉编译器这几块内存不会重叠,所以编译器就可以放心大胆对程序进行优化。 另一个关键字是_Complex,C99才引入,而且需要包含<complex.h>头文件。其实在GNU C中,早就有__complex__、__real__、__imag__等扩展关键字。如下代码:
1 #include <stdlib.h>
2 #include <stdio.h>
3
4 int main(){
5 __complex__ a = 3 + 4i;
6 __complex__ b = 5 + 6i;
7 __complex__ c = a + b;
8 __complex__ d = a * b;
9 __complex__ e = a / b;
10 printf("a + b = %f + %fin", __real__ c, __imag__ c);
11 printf("a * b = %f + %fin", __real__ d, __imag__ d);
12 printf("a / b = %f + %fin", __real__ e, __imag__ e);
13 return 0;
14 }
可以看到,在C语言中也可以直接对复数进行计算。数值计算再也不是Fortran的专利。 感悟二:指针和数组还真是不一样从学C语言开始,老师就教导我们说指针和数组是一样的,它们可以用同样的方式进行操作。而事实上,指针和数组还是有差别的。直到多年后读《C专家编程》,才直到所谓指针和数组一样是一个美丽的错误,只是因为在《The C Programming Language》这本书里,把“作为函数参数时,指针和数组一样”这样一句话前后分开分别印到了两页而已。 比如,指针不保存数据的长度信息,而数组有,如下代码:
1 #include <stdlib.h>
2 #include <stdio.h>
3
4 int main(){
5 int* p = (int*)malloc(100*sizeof(int));
6 int arr[100] = {0};
7 printf("The size of p: %dn", sizeof(p));
8 printf("The size of arr: %dn", sizeof(arr));
9 return 0;
10 }
这段代码的运行结果为: The size of p: 8 The size of arr: 400 我们经常可以使用如下的代码片段来获得一个数组中有多少个元素,如下: int arr[100]; size_t length = sizeof(arr)/sizeof(int); (编辑:佛山站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
站长推荐
热点阅读

