c语言常见笔试题总结


Posted in 面试题 onSeptember 05, 2016
【1 使用宏】
1.1
#ifdef NDEBUG
#define TRACE(S) S
#else
#define TRACE(S) printf(“%s;\n”, #S); S
#endif
问:以上TRACE()宏的作用是什么?
1.2 #error的作用?
1.3 定义一个宏,求出给定数组中的元素的个数
#define NELEMENTS(array) ??
1.4 定义一个宏,求出给定结构中给定成员的偏移量
#define OFFSET(structure, member) ??

【2 数据声明和定义】
给定以下类型的变量a的定义式:
a) An integer
b) A pointer to an integer
c) A pointer to a pointer to an integer
d) An array of 10 integers
e) An array of 10 pointers to integers
f) 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) An array of ten pointers to functions that take an integer argument and return an integer
【3 复杂类型(1)】
有如下表达式:

char (*(*x())[])();
请用文字描述x是什么。

【4 复杂类型(2)】
jmp_buf的定义:
typedef struct _jmp_buf
{
REG_SET reg;
int extra[3];
} jmp_buf[1];
setjmp函数的原型:
extern int setjmp (jmp_buf __env);
问:调用setjmp时传递__env的内容,还是传递指针?

【5 头文件】
问:为什么标准头文件都有类似以下的结构?
#ifndef __INCvxWorksh
#define __INCvxWorksh
#ifdef __cplusplus
extern “C” {
#endif
/*…*/
#ifdef __cplusplus
}
#endif
#endif /* __INCvxWorksh */
【6 static关键字】
请说出static关键字的3种用处:
(1)用于全局变量;
(2)用于局部变量;
(3)用于函数。
/* file.c */
static int a;
int b;
static int fn()
{
static int x;
int y;
}

【7 const关键字】
7.1 const关键字的意义是什么?
7.2 解释以下的变量定义:
const int a1;
int const a2;
const int *a3;
int * const a4;
int const * const a5;
【8 volatile关键字】
8.1 volatile意义?例如
volatile int *p;
8.2 volatile能和const一起使用吗?例如
volatile const int *p;
【9 sizeof()】
有以下定义:
char *pmsg = “A”;
char msg[] = “A”;
char ch = ‘A’;
问:
sizeof(pmsg) = ?
sizeof(msg) = ?
sizeof(“A”) = ?
sizeof(ch) = ?
sizeof(‘A’) = ? (在C++中等于多少?)
void f(char param[100])
{
// sizeof(param) = ?
}
【10 字符串】
有以下代码
char *pmsg = “hello, world!”;
strcpy(pmsg, “hi, there.”);
试评论该代码。

【11 混合运算】
有以下代码:
void foo()
{
unsigned int a = 6;
int b = -20;
(a+b > 6) ? puts(“> 6″) : puts(” }
请问调用foo()的输出?
【12 内存访问】
有以下代码:
void fn()
{
int a[100];
int *p;
p = (int *)((unsigned int)a + 1);
printf(“p=0x%x\n”, *p);
}
试评论以上代码。
【13 C库函数】
请说明以下函数的意义:
void perror(const char *__s);
fdprintf(int, const char *, …);
isspace(), isxdigit(), strerr(), sprintf()

Tags in this post...

面试题 相关文章推荐
Java里面如何把一个Array数组转换成Collection, List
Jul 26 面试题
是否有自动比较结构的方法
Jun 03 面试题
数据库的约束含义
Sep 09 面试题
.NET概念性的面试题
Feb 29 面试题
抽象类和接口的区别
Sep 19 面试题
Linux文件系统类型
Sep 16 面试题
do you have any Best Practice for testing
Jun 04 面试题
Prototype中如何为一个元素添加一个方法
Dec 08 面试题
腾讯公司的一个sql题
Jan 22 面试题
介绍一下Mysql的存储引擎
Feb 12 面试题
AssertionError 跟一下那个类是 “is – a”的关系
Feb 21 面试题
方正Java笔试题
Jul 03 面试题
C语言笔试题
Sep 04 #面试题
求网格中的黑点分布
Nov 06 #面试题
用C语言实现文件读写操作
Oct 27 #面试题
网络、C以及其他硬件方面的面试题
Aug 23 #面试题
随机分配座位,共50个学生,使学号相邻的同学座位不能相邻
Jan 18 #面试题
编写用C语言实现的求n阶阶乘问题的递归算法
Oct 21 #面试题
C语言笔试题回忆
Apr 02 #面试题
You might like
php和javascript之间变量的传递实现代码
2012/12/19 PHP
Yii2配置Nginx伪静态的方法
2017/05/05 PHP
PHP实现数据库统计时间戳按天分组输出数据的方法
2017/10/10 PHP
PHPUnit测试私有属性和方法功能示例
2018/06/12 PHP
php解决crontab定时任务不能写入文件问题的方法分析
2019/09/16 PHP
js 调用本地exe的例子(支持IE内核的浏览器)
2012/12/26 Javascript
c#+jquery实现获取radio和checkbox的值
2020/09/12 Javascript
Jquery简单实现GridView行高亮的方法
2015/06/15 Javascript
JavaScript 节流函数 Throttle 详解
2016/07/04 Javascript
浅析ES6的八进制与二进制整数字面量
2016/08/30 Javascript
微信小程序 教程之wxapp 视图容器 view
2016/10/19 Javascript
基于BootstrapValidator的Form表单验证(24)
2016/12/12 Javascript
浅谈微信页面入口文件被缓存解决方案
2018/09/29 Javascript
Vue如何实现监听组件原生事件
2020/07/03 Javascript
JavaScript本地储存:localStorage、sessionStorage、cookie的使用
2020/10/13 Javascript
Python的爬虫框架scrapy用21行代码写一个爬虫
2017/04/24 Python
Python测试网络连通性示例【基于ping】
2018/08/03 Python
使用PM2+nginx部署python项目的方法示例
2018/11/07 Python
Python读取Pickle文件信息并计算与当前时间间隔的方法分析
2019/01/30 Python
python tkinter canvas 显示图片的示例
2019/06/13 Python
django将数组传递给前台模板的方法
2019/08/06 Python
Python函数的默认参数设计示例详解
2019/12/01 Python
python创建n行m列数组示例
2019/12/02 Python
实现Python与STM32通信方式
2019/12/18 Python
python Canny边缘检测算法的实现
2020/04/24 Python
Python 程序员必须掌握的日志记录
2020/08/17 Python
HTML5实现移动端弹幕动画效果
2019/08/01 HTML / CSS
凯特·丝蓓英国官网:Kate Spade英国
2016/11/07 全球购物
美国知名眼镜网站:Target Optical
2020/04/04 全球购物
自考生自我鉴定范文
2013/10/01 职场文书
股份合作协议书
2014/04/12 职场文书
学校三八妇女节活动总结
2015/02/06 职场文书
立春观后感
2015/06/18 职场文书
关于拾金不昧的感谢信(五篇)
2019/10/18 职场文书
《我在为谁工作》:工作的质量往往决定生活的质量
2019/12/27 职场文书
Win10鼠标轨迹怎么开 Win10显示鼠标轨迹方法
2022/04/06 数码科技