1计算sizeof,strlen
char data[] ="hello\0world" ;
char *str ="hello\0world\0";
strcpy(data,str);
sizeof(data);
strlen(data);
解析:sizeof是计算变量所占内存大小的,strlen计算字符串大小
2 计算int a[3][3] = { {1,2,3},{4,5,6},{7,8,9}}
int *p[3] = { a[0],a[1],a[2] };
int *pa = a ;
//类似指针域数组的问题
3. 大端模式、小端模式
4、内存对齐
5、static的问题,static函数与普通函数的区别,static变量与局部变量区别
6.define一个数组table的大小
#define N sizeof(table)/sizeof(table[0])
7 线程、进程的区别
8 tcp/UDP区别
9、2个栈实现一个队列
10.输出n个数里面k个最小的数
11.去掉字符串中重复的字符 “abbacdf”– “abcdf”
12找出字符串里面第一个没有重复的字符 “abaedef” 输出b
13 非递归二叉树
14 二叉树找错
15 利用移位、加减代替乘除运算
unsigned udiv_simple(unsigned n, unsigned d)
{
unsignedq = 0, r = n;
intwei = 31 ;
do{
wei--;
if( (r >> wei) >= d )
{
r-= (d << wei);
q+= (1 << wei);
}
}while(wei);
returnq;
}
int multiply_shift(int a , int b)
{
inttemp = a ;
intsum = 0 ;
for(inti = 0 ; i <32 ;++i)
{
if(b&(0x1<<i))
sum+= (temp<<i);
}
returnsum ;
}
16 实现一个计算器