计算机专业面试题汇总
1 . 用预处理指令#define 声明一个常数,用以表明1年中有多少秒(忽略闰年问题)
#define SECONDS_PER_YEAR (60 * 60 * 24 * 365)UL
2. 嵌入式系统中经常要用到无限循环,你怎么样用C 编写死循环呢?while(1){}或者for(;;){}
3. 用变量a 给出下面的定义
a) 一个整型数(An integer)
b) 一个指向整型数的指针( A pointer to aninteger)
c) 一个指向指针的的指针,它指向的指针是指向一个整型数( Apointer to a pointer to an integer)
d) 一个有10个整型数的数组( An array of 10integers)
e) 一个有10个指针的数组,该指针是指向一个整型数的。(An array of 10 pointersto integers)
f) 一个指向有10个整型数数组的指针( A pointer to an arrayof 10 integers ) g) 一个指向函数的指针,该函数有一个整型参数并返回一个整型数(A pointer to a functionthat takes an integer as an argument and returns an integer ) h) 一个有10个指针的数组,该指针指向一个函数,该函数有一个整型参数并返回一个整型数( An array of tenpointers to functions that take an integer argument and return an integer )
答案是:
a) int a; // An integer
b) int *a; // A pointer to an integer
c) int **a; // A pointer to a pointer to an integer
d) int a[10]; // An array of 10 integers
e) int *a[10]; // An array of 10 pointers to integers
f) int (*a)[10]; // A pointer to an array of 10 integers
g) int (*a)(int); // A pointer to a function a that takes an
integerargument and returns an integer
h) int (*a[10])(int); // An array of 10 pointers to functions that take aninteger argument and return an integer
4. 关键字static 的作用是什么?
这个简单的问题很少有人能回答完全。在C 语言中,关键字static 有三个明显的作用:
1) 在函数体,一个被声明为静态的变量在这一函数被调用过程中维持其值不变。