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...

面试题 相关文章推荐
运行时异常与一般异常有何异同?
Jan 05 面试题
Ibatis的核心配置文件都有什么
Sep 08 面试题
广州御银科技股份有限公司试卷(C++)
Nov 04 面试题
.NET程序员的数据库面试题
Oct 10 面试题
什么是Smart Navigation?
Jul 03 面试题
P/Invoke是什么
Jul 31 面试题
系统管理员的职责包括那些?管理的对象是什么?
Jan 18 面试题
解决方案设计综合面试题
Aug 31 面试题
传统软件工程与面向对象的软件工程有什么区别
May 31 面试题
请用Java实现列出某个目录下的所有文件
Sep 23 面试题
掌上明珠Java程序员面试总结
Feb 23 面试题
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中利用explode函数分割字符串到数组
2014/02/08 PHP
PHP管理依赖(dependency)关系工具 Composer 安装与使用
2014/08/18 PHP
php几个预定义变量$_SERVER用法小结
2014/11/07 PHP
PHP实现生成带背景的图形验证码功能
2016/10/03 PHP
Laravel框架路由设置与使用示例
2018/06/12 PHP
php和C#的yield迭代器实现方法对比分析
2019/07/17 PHP
PHP实现提取多维数组指定一列的方法总结
2019/12/04 PHP
基于PHP实现用户在线状态检测
2020/11/10 PHP
Cookie跨域问题解决方案代码示例
2020/11/24 PHP
用javascript做拖动布局的思路
2008/05/31 Javascript
图片无缝滚动代码(向左/向下/向上)
2013/04/10 Javascript
jquery实现定时自动轮播特效
2015/12/10 Javascript
通过BootStrap实现轮播图的实际应用
2016/09/26 Javascript
js获取当前页的URL与window.location.href简单方法
2017/02/13 Javascript
使用javaScript实现鼠标拖拽事件
2020/04/03 Javascript
vue 将页面公用的头部组件化的方法
2017/12/18 Javascript
vue引入新版 vue-awesome-swiper插件填坑问题
2018/01/25 Javascript
vue中设置、获取、删除cookie的方法
2018/09/21 Javascript
javascript中关于类型判断的一些疑惑小结
2018/10/14 Javascript
vue 指令之气泡提示效果的实现代码
2018/10/18 Javascript
利用Angular2的Observables实现交互控制的方法
2018/12/27 Javascript
jQuery 图片查看器插件 Viewer.js用法简单示例
2020/04/04 jQuery
微信小程序连接服务器展示MQTT数据信息的实现
2020/07/14 Javascript
使用Python编写简单网络爬虫抓取视频下载资源
2014/11/04 Python
Python callable()函数用法实例分析
2018/03/17 Python
Python实现多级目录压缩与解压文件的方法
2018/09/01 Python
python定时检测无响应进程并重启的实例代码
2019/04/22 Python
使用Python实现正态分布、正态分布采样
2019/11/20 Python
基于python求两个列表的并集.交集.差集
2020/02/10 Python
如何配置、使用和清除Smarty缓存
2015/12/23 面试题
南京软件公司的.net程序员笔试题
2014/08/31 面试题
交通事故责任认定书
2015/08/06 职场文书
《当代神农氏》教学反思
2016/02/23 职场文书
pytorch实现手写数字图片识别
2021/05/20 Python
mybatis3中@SelectProvider传递参数方式
2021/08/04 Java/Android
Windows Server 版本 20H2 于 8 月 9 日停止支持,Win10 版本 21H1 将于 12 月结束支
2022/07/23 数码科技