Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1223198
  • 博文数量: 322
  • 博客积分: 10010
  • 博客等级: 上将
  • 技术积分: 3276
  • 用 户 组: 普通用户
  • 注册时间: 2009-12-17 09:21
文章分类

全部博文(322)

文章存档

2010年(155)

2009年(167)

我的朋友

分类: 嵌入式

2009-12-19 09:06:13

1.2 填空题
(32)说明下面变量的定义:
char (*p[])();          _____________________
char *p()[];    _____________________
char (*p)[10][10];     _____________________
char(*(*p())[])[];     _____________________

(33)下面共同体的存储空间是_____
union BOOKNUMBER
{
    T_S16 age;
    T_S8 title[10];
    T_S8 post[32];
}

(34)若整数值范围是 -32768 至 32767。在执行下面的表达式之后, i 的结果是什么?
int i=32766;
i=i+1;          i =      
i=i+1;          i =      

(35)对于联合类型:
union x
{
    char ch[7];
    int i[2];
    float f;
}tom;
那么, sizeof(tom) =       

(36)有以下程序,程序的输出结果是______(注意: ch[0]在低字节,ch[1]在高字节)。
#include
union pw
{
    int i;
    char ch[2];
 }a;

main()
{
    a.ch[0] = 13;
    a.ch[1] = 0;
    printf("%d\n", a.i);
}

(37)以下程序用以输出结构体变量bt所占内存单元的字节数,请在横线内填上适当内容。
struct ps
{
    double i;
    char arr[20];
};

main()
{
     struct ps bt;
     printf("bt size :%d\n", _______);
}

(38)设位段的空间分配由右到左,则以下程序的运行结果是_____。
struct packed_bit
{
     unsigned a:2;
     unsigned b:3;
     unsigned c:4;
     int i;
}data;

main()
{
    data.a = 1;
    data.b = 2;
    data.c = 3;
    data.i = 0;
    printf("%d\n", data);
}

(39)以下程序的运行结果是_____。
main()
{
    enum COLOR{
        RED,
        BLUE = 5,
        YELLOW
    }cl;
    printf("%d", cl.YELLOW);
}
(40)以下程序的运行结果是______。
main()
{
    union EXAMPLE{
        struct{
            int x;
            int y;
        }in;
        int a;
        int b;
    }e;

    e.a = 1;
    e.b = 2;
    e.in.x = e.a * e.b;
    e.in.y = e.a + e.b;
    printf("%d %d", e.in.x, e.in.y);
}

(41)请补充下面代码:
#include
main()
{
     T_S16 *a;
     a = (int*)malloc(_________);
     *a = 123;
     ______ = 456;
     ______ = 789;
     …
}

(42)在小类型转大类型时应确保不会改变数据的值,在程序的逻辑上确认后,还应在强制转换代码后加上清高位代码以确保转换正确,请填充下面的代码以示例:
T_S8 cLocalHeight = 0xfe;
T_U32 g_lHeight = 0;
g_lHeight = _________cLocalHeight;

(43)在不同符号位转换时(T_U8?àT_S8, T_U16?àT_S16, T_U32?àT_S32)应在逻辑上确保不会改变数据的符号位或是含义值,请填充下面的代码以示例:
T_S16 nTop;
T_S16 nBottom;
T_VOID Img_SetHeight(T_U16 nHght)

T_S16 nHeight = nTop - nBottom;
Img_SetHeight(___________);

(44)写出判断字符变量c是英文字母的表达式____________。
(45)下面函数的返回值是______。
int data()
{
    float x = 9.9;
    return(x);
}
(46)下面程序段的输出结果是______。
Union
{
    int b1, b2, b3;
} yy;
yy.b1 = 1;
yy.b2 = 2;
yy.b3 = 10 * yy.b1 + yy.b2;
printf("%d, %d, %d", yy.b1, yy.b2, yy.b3);

阅读(802) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~