会员中心     
首页 > 欧亿·体育(中国)有限公司专栏 > HRM > 人力资源 > 面试甄选 > C语言高频基础题-面试真题及答案DOCX

C语言高频基础题-面试真题及答案DOCX

宇东558***
V 实名认证
内容提供者
欧亿·体育(中国)有限公司大小:15KB(压缩后)
文档格式:DOCX(4页)
欧亿·体育(中国)有限公司语言:中文版/英文版/日文版
解压密码:m448
更新时间:2024/11/29(发布于贵州)

类型:积分欧亿·体育(中国)有限公司
积分:8分 (VIP无积分限制)
推荐:升级会员

   点此下载 ==>> 点击下载文档


“C语言高频基础题-面试真题及答案DOCX”第1页图片 图片预览结束,如需查阅完整内容,请下载文档!
文本描述
运算符
运算符的优先级要熟悉
逗号运算符最后的结果是最后一位,如
x =(a=2,b=3,a+b)
结果为5
a++=b++;是不可以的
++a=++b;是可以的
a=5,b=10;
a=b++;
printf("%d,%d", a, b);
//结果是10,11
a++的具体运算过程为
int temp=a;
a=a+1;
return temp;
++a的具体运算过程为
a=a+1;
return a;
后置自增运算符需要把原来变量的值复制到一个临时的存储空间,等运算结束后才会返回这个临时变量的值。所以前置自增运算符效率比后置高。
输入输出
scanf和gets的区别?
怎么用scanf接收i个数据?
抑制符’*’?
printf是从右向左的,例:
int arr[] = { 11,12,13,14,15 };
int *ptr = arr;
*(ptr++) += 100;
printf("%d %d", *ptr, *(++ptr));
//输出13 13
printf的特殊用法
char str[]="hello";
printf(str);
原码、反码、补码
要知道原码反码补码的关系,会已知一个正数求他的反码、补码;已知一个负数求他的反码、补码就可以了。
预处理
程序的编译过程分几个部分?
宏定义是在编译的哪个阶段被处理的?
怎么用预处理指令 #define 声明一个常数 ,用以表明 1 年中有多少秒(忽略闰年问题)?
预处理标识#error的目的是什么?
关键字
static
关键字 static 的作用是什么?
const
如何定义一个指向整型常量的指针变量?
如何定义一个指向整型变量的指针常量?
const常量和#define的区别是什么?
volatile
关键字 volatile 的作用是什么?
一般在什么情况下使用volatile?
extern
关键字extern的作用是什么?
extern"C"的作用是什么?
C语言编译过程中,关键字volatile和extern分别在哪个阶段起作用?
sizeof
sizeof关键字的作用是什么?
不使用sizeof()函数,怎么求数据类型所占字节数?
sizeof和strlen的区别是什么?
typedef
以下两种情况的意图都是要定义 dPS 和 tPS 作为一个指向结构体 s 的指针。哪种方法更好呢?为什么?
#define dPS struct s *
typedef struct s * tPS;
typedef和#define有什么区别?
auto
关键字auto的作用是什么?
register
关键字register的作用是什么?
使用时需要注意什么?
堆栈
堆和栈有什么区别?
堆和栈的存储效率,哪个更快?
堆栈溢出的原因有哪些?
队列和栈的区别?
为什么堆的空间不连续?
为什么局部变量在栈里不在堆里?
C语言函数参数压栈的顺序是怎么样的?
对于栈中内存如果没有初始化,则会出现“烫烫烫烫烫烫”。对于堆中内存如果没有初始化,则会出现“屯屯屯屯屯”
指针
指针的大小是多大?
指针与数组名的区别是什么?
什么是指针数组?
什么是数组指针?
怎么用指针数组表示二维数组?
怎么用数组指针表示二维数组?
可变长数组怎么实现?
什么是函数指针?
函数指针有什么作用?
什么是指针函数?
什么是野指针?
如何避免野指针?
引用与指针的区别?
局部变量在堆中创建,函数返回后局部变量会被释放,所以不能返回局部变量的地址,局部变量在释放后会丢失(特别经典)
函数
函数返回过程是怎么样的?
函数A调用函数B的调用过程是怎么样的?
什么是回调函数?
为什么要使用回调函数?
什么是可重入函数?
可重入函数有什么特点及注意事项?
如何实现一个函数在main函数之前执行?
C中:如果函

版权所有: 欧亿·体育(中国)有限公司©2025 客服电话: 0411-88895936 18842816135

欧亿·体育(中国)有限公司