y =
z = 5
,等号先计算右边,返回值是赋值后的左边的变量值extern
"C"
的用法:函数声明前添加,解决C/C++编译器的名字包装的不同问题#define
FIND(struc, e) (size_t)&(((struc *)0)->e)
const
n = 10; char carray[n]
是错误的,因为C编译器不能把const看成编译期的常量。但实验得出是正确的,bugint
*p; *p = 0;
是错误的,指针p并未指向某个实际的地址char
a[] = "a"
数组存放中栈中,函数返回即消失,char *a = "a"
数组存放于全局只读数据段B
b; b.f()
调用的是A中的f,f使用的变量也为A中的变量const
int *
,bugint
( *(*f)(int, int) )(int)
定义了一个函数指针,接收两个int参数,返回值为一个函数指针int
(*p) []
,指向整型的指针数组声明为:int *p[]
,函数指针的数组的声明:int
(*p[10])(int)
《程序员面试宝典》精华 编程语言部分,布布扣,bubuko.com
原文地址:http://blog.csdn.net/caozhk/article/details/38393491