(一)12个高矮不同的人,排成两排,每排必须是从矮到高排列,而且第二排比对应的第一排的人高,问排列方式有多少种?
http://blog.csdn.net/suyksuyk/article/details/4697941
(二)
#include<iostream>
using namespace std;
#pragma pack(2)
class A
{
union U //13 union中选最大的为占内存的
{
char buff[13];
int i;
}u;
int i; //4
void foo() { } //函数不占
typedef char* (*f)(void*); //指针函数不占
enum{red, green, blue} color; //4
}a;
#pragma pack(2)
int main()
{
cout<<sizeof(a)<<endl;//
}
13+4+4=21
但是#pragma pack(2) 是代表2字节对齐,数据对齐 也就是22了。如果去掉#pragma pack(2),就是24。
sizeof(a)的值是()
A、20 B、21 C、22 D、24 E、非以上选项
(三)
#include <iostream>
using namespace std;
struct Foo
{
Foo() { }
Foo(int) { }
void fun() { }
};
int main(void)
{
Foo a(10); //语句1
a.fun(); //语句2
Foo b(); //语句3 编译器认为是一个函数
b.fun(); //语句4
return 0;
}
哪语句错误? 语句4
(四)int **a[3][4]; //数组 a 有 3*4 个元素,每个元素是一个 指向指针的整型指针
printf("%d\n",sizeof(a)); //48
3×4×4=48
1371

被折叠的 条评论
为什么被折叠?



