您的位置:首页 > 职场人生

一些面试基础知识点(1)

2011-01-06 20:10 351 查看
一些老掉牙的知识点,就怕阴沟里翻船,全部翻出来看看。

内存对齐,sizeof,strlen类问题:

这类问题都是考基本的内存方面的问题,基本类型的数据么,主要是字符串和指针的问题,字符串主要尾部的\0,指针注意32位机器上都是4字节的。复合类型就有对齐的问题,简单来说是由成员的对大对齐单位来指定的。具体看例子:

char ss[] = "1234";
std::cout<<sizeof(ss);  //输出5
std::cout<<strlen(ss);  //输出4

char ass[100] = "1234";
std::cout<<sizeof(ass); //输出100

char* pss = "1234";
std::cout<<sizeof(pss); //输出4

int ai[100] = {0};
std::cout<<sizeof(ai); //输出400
std::cout<<sizeof(*ai); //输出4

struct a {
short aa;
short ab;
short ac;
}aaa;

struct b {
long ba;
short bb;
}bbb;
std::cout<<sizeof(aaa); //输出6
std::cout<<sizeof(bbb); //输出8

class cc {
public:
void trivial(){}
int a;
int b;
char c;
};
std::cout<<sizeof(cc); //输出12
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: