15day---C++面试题

本文解析了C语言程序设计中的经典习题,包括条件表达式的运算、存储标识符的可见性和存在性、二维字符数组的指针操作以及宏定义的深入理解。通过这些习题,读者可以加深对C语言核心概念的理解。

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

1.以下程序输出的结果是D

int main()
{
	int a = 5,b = 4,c = 3,d;
	d = (a > b > c);
	printf("%d\n",d);
}

A 5
B 4
C 3
D 0
解:
a > b > c 的过程:(a>b)>c
所以有(5 > 4)> 3
0 > 3
0
2.下列存储标识符中,()的可见性与存在性不一致
A 外部类
B 自动类
C 内部静态类
D 寄存器类
解:存在性就是生命周期;可见性就能访问。
内部静态类就是只有在包含该类的上下文里才能使用的类,比如在一个类内部定义的类,她是全局存在的。
3.以下程序运行后的结果是

int main()
{
	char str[][10]={"China","Beijing"},*p = str;
	printf("%s",p+10);
}

A China
B Beijing
C ng
D ing
解:
str[][10]为二维字符数组,p指向这个数组的首指针,p
+10就是第二维的首指针,所以输出为*Beijing**
4.解释以下宏定义的含义
#pragma comment:将一个注释记录放置到对象文件或可执行文件
#progma pack 用来改变编译器的字节对齐方式
#progma code_seg 设置程序中函数在obj文件中所在的代码段,如果未指定参数,函数将放置在默认代码段.txt中
#progma once 保证所在文件只会包含一次,它是基于磁盘文件的,而#ifndef则是基于宏的

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值