小米web方向面试题

来源:互联网 发布:使用阿里云服务器翻墙 编辑:程序博客网 时间:2024/06/05 03:57

小米的笔试题靠的还是比较细,深入的。对于C语言指针这一块靠的比较多。

选择和填空各有一道,不过原理都是一样的。题目中都是指明Linux64位下,

例如:

int p = 0; //变量p,在栈中开辟4个字节的空间

int *a = &p;//指针变量a,指向p,所谓指向是a的地址空间里面存放p的地址

long* b = (long*)&p;//指针变量b,依然指向p,内容还是存放p的地址

int **c = &a;//指针的指针,c指向a指针,内容存放a的地址。

a+=2; //p+2;

b+=2;//p+2

c+=2;//a+2=p-1+2=p+1,原因是在栈中a在p后申请空间因此在栈中地址位于p上面。每个1代表4个字节

printf("%p,%p,%p,%p",&p,a,b,c);

2.  setTimeOut和setInterval的区别;

前者,处罚之后再给定的时间之后执行一次;后者,触发之后每隔一段固定的时间执行一次,等于开启了循环。

但是具体代码中时间块的执行需要根据代码判断。

3.  三次握手,ok太基本

4. char buf[10]和char* buf两者在编译的时候buf[1]都是什么情况;

在数组的情况,由于代码在实际调用的时候才赋值,所以此时buf[1]内容为空,而指针型在在编译器已经初始化;

5. 数据库,需要用到count,group by ,sort by;

6   主键约束和唯一约束有如下细小的差别。

  •     主键约束不允许出现NULL值。任何索引的索引键都不允许包含null值。但唯一约束允许包含NULL值,但唯一约束把两个NULL值当作重复值,所以施加了唯一约束的每一列只允许包含一个NULL值。
  •     创建主键时会自动创建聚集索引,除非当前表中已经含有了聚集索引或是创建主键时指定了NONCLUSTERED关键字。
  •     创建唯一约束时会自动创建非聚集索引,除非你指定了CLUSTERED关键字并且当前表中还没有聚集索引。
  •     每个表中只能有一个主键,但可以由多个唯一约束。





原创粉丝点击