c 面试题
zhuge122
这个作者很懒,什么都没留下…
展开
-
不用中间变量交换a,b的值
#includeint main(){ int a=3,b=5; printf("a=%d b=%d\n",a,b); a=a+b; b=a-b; a=a-b; printf("a=%d b=%d\n",a,b); a=a*b; b=a/b; a=a/b;原创 2014-08-04 19:02:40 · 575 阅读 · 0 评论 -
#define dPS struct s * typedef struct s * tPS
#define dPS struct s * dps s typedef struct s * tPS; 以上两种情况的意图都是要定义dPS 和 tPS 作为一个指向结构s指针。哪种方法更好呢?(如果有的话)为什么? 这是一个非常微妙的问题,任何人答对这个问题(正当的原因)是应当被恭喜的。答案是:typedef更好。思考下面的例子: dPS p1,p2; tPS p3,p转载 2014-08-04 19:32:02 · 4217 阅读 · 0 评论 -
用宏定义,不用?:和比较switch等求两个数中较大的数
#include#include#define MAX(A,B) (A+B+abs(A-B))/2int main(){ int a=7,b=10,max; printf("a=%d b=%d\n",a,b);max=MAX(a,b); printf("max=%d\n",max); return 0;}原创 2014-08-04 19:23:41 · 461 阅读 · 0 评论 -
思特面
1.存放地址的变量称为指针变量。指针变量是一种特殊的变量,它不同于一般的变量,一般变量存放的是数据本身,而指针变量存放的是数据的地址。一个变量的地址指出了变量的存储单元在内存中的具体位置,能对变量进行存取操作。这个变量的地址就是变量的指针。指针是一种具有特殊意义的整型数,指针不能存放在一般的整型变量中,必须存放在专门指针的变量中,这类变量就是指针变量。指针变量是变量的一种,指针变量的值是地址(也是原创 2015-06-29 20:52:26 · 780 阅读 · 0 评论