近日,我混迹于深圳各个区的大小街巷,龙华、福田、南山、宝安,各个区都有自己的特色,我也接到了各大公司的面试邀请,参加了各种公司的面试、笔试,现在有空,安静下来,进行复习、分析、实践,只为把关键的技术点把握。。。。。
1、给定一个整型变量a,写两段代码,第一个设置a的bit3,第二个清除a的bit3,在以上两个操作中, 要保持其它位不变。
char a=0x00;//char 1字节 8位,int 4字节 32位,a为 0000 0000
#define bit3 (0x1<<3) //0x1为0001,左移三位后为1000,0x8
a |= bit3; // 0|1=1,1|1=1,0|0=0,a或bit3后第四位和1或,第四位为1,其他位和0或,保持不变,此时a为 0000 1000,实现设置bit3
a &= ~bit3;//0&0=0,0&1=0,1&1=1,a为 0000 1000,~bit3为 1111 0111 ,运算后a为 0000 0000,实现清除bit3
2、用变量a给出下面的定义
a) 一个整型数(An integer) int a;
b) 一个指向整型数的指针(A pointer to an integer) *int a;
c) 一个指向指针的的指针,它指向的指针是指向一个整型数(A pointer to a pointer to an integer) **int a;
d) 一个有10个整型数的数组(An array of 10 integers) int a[10];
e) 一个有10个指针的数组,该指针是指向一个整型数的(An array of 10 pointers to integers) *int a[10];
f) 一个指向有10个整型数数组的指针(A pointer to an array of 10 integers) int (*a)[10];
g) 一个指向函数的指针,该函数有一个整型参数并返回一个整型数(A pointer to a function that takes an integer as an argument and returns an integer) int (*a)(int);
h) 一个有10个指针的数组,该指针指向一个函数,该函数有一个整型参数并返回一个整型数( An array of ten pointers to functions that take an integer argument and return an integer )