【C/C++_选择题】(D06 1128)
1、十进制变量i的值为100,那么八进制的变量i的值为( C )
A 146
B 148
C 144
D 142
2、有一个如下的结构体,请问在64位编译器下用sizeof(struct A)计算出的大小是多少( A )
struct A
{
long a1;
short a2;
int a3;
int *a4;
};
A 24
B 28
C 16
D 18
分析: 结构体对齐规则
(1) 第一个结构体变量在 偏移量为0 的地址处
(2) 其它成员变量要对齐到 对齐数的整数倍 的地址处
(3) 对齐数= 编译器默认的对齐数 与 该成员大小 的较小值 (VS中默认值为8 Linux默认值为4)
(4) 结构体总大小为对齐数中最大对齐数的整数倍
3、对于下面的C语言声明描述正确的一项是(C)
char (*p)[16];
A p是长度为16的字符指针数组
B p是包含16个字符的字符串
C p是指向长度为16的字符数组的指针
D p是长度为16的字符数组
4、有以下程序,程序运行后的输出结果是 ( C )
#include<iostream>
#include