C语言你学好了吗?若出以下考试题你能做上来几个。

本文包含了一系列关于C语言的面试题目及其解析,涵盖了从基本概念到高级特性等多个方面,如预处理指令、关键字使用、位操作等,适合于准备面试或深入学习C语言的读者。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. 用预处理指令#define 声明一个常数,用以表明1年中有多少秒(忽略闰年问题);
2. 写一个“标准”宏MIN ,这个宏输入两个参数并返回较小的一个;
3. 预处理器标识#error的目的是什么?
4. 嵌入式系统中经常要用到无限循环,你怎么样用C编写死循环呢?有几种方法?
5. 用变量a给出下面的定义

a) 一个整型数(An integer)
b)一个指向整型数的指针( A pointer to an integer)
c)一个指向指针的的指针,它指向的指针是指向一个整型数( A pointer to a pointer to an intege)r
d)一个有10个整型数的数组( An array of 10 integers)
e) 一个有10个指针的数组,该指针是指向一个整型数的。(An array of 10 pointers to integers)
f) 一个指向有10个整型数数组的指针( A pointer to an array of 10 integers)
g) 一个指向函数的指针,该函数有一个整型参数并返回一个整型数(A pointer to a function that takes an integer as an argument and returns an integer)
h) 一个有10个指针的数组,该指针指向一个函数,该函数有一个整型参数并返回一个整型数( An array of ten pointers to functions that take an integer argument and return an integer )

6. 关键字static的作用是什么?
7.关键字const有什么含意?

下面的声明都是什么意思?
const int a;
int const a;
const int *a;
int * const a;
int const * a const;
8. 关键字volatile有什么含意?并给出三个不同的例子;
9. 嵌入式系统总是要用户对变量或寄存器进行位操作。给定一个整型变量a,写两段代码,第一个设置a的bit3,第二个清除a 的bit 3。在以上两个操作中,要保持其它位不变;


10. 下面的代码输出是什么,为什么?

void foo(void)
{
unsigned int a = 6;
int b = -20;
(a+b > 6) ? puts("> 6") : puts("<= 6");
}

11 Typedef 在C语言中频繁用以声明一个已经存在的数据类型的同义字。也可以用预处理器做类似的事。例如,思考一下下面的例子:

#define dPS struct s *
typedef struct s * tPS;
12. C语言同意一些令人震惊的结构,下面的结构是合法的吗,如果是它做些什么?

int a = 5, b = 7, c;
c = a+++b;

上面的题目你能做出来几个呢???呵呵

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值