摘要: 当一个数组名出现在一个表达式中时,它会被转换为指向该数组第一个元素的指针常量,既然是常量,那么对它进行 & 操作,似乎会有问题。1 void main ()2 {3 int ary[5] = {1, 2, 3, 4, 5};4 5 printf("%p\r\n", ary);6 printf("%p\r\n", &ary);7 }编译,运行,一切都很正常。我们都知道,& 操作符的操作对象必须是左值,为什么可以对一个常量进行 & 操作呢?可以通过下面这段代码,验证 ary 是一个常量1 void main ()2 {3 in 阅读全文
posted @ 2014-03-31 18:58 luzhiyuan 阅读(956) 评论(0) 推荐(0) 编辑
摘要: 1 void main () 2 { 3 int c = 6; 4 int d = 7; 5 6 printf("%d,%d\r\n", c, d); 7 8 c ^= d; 9 d ^= c;10 c ^= d;11 12 printf("%d,%d\r\n", c, d); 13 } 阅读全文
posted @ 2014-03-31 17:23 luzhiyuan 阅读(138) 评论(0) 推荐(0) 编辑