niusouti.com
更多“在图16-4所示的程序中,变量gvCh、gvShort、gvInt、gvLong、array和p分别存放在哪一个段? ”相关问题
  • 第1题:

    阅读以下程序段,在实模式存储管理方案中,gvCh存放在(36)中;main函数编译后的代码存入在(37)中;指针p存放在(38)中。

    #include<malloc. h>

    unsigned char gvCh;

    unsigned short gvShort

    unsigned int gvInt=0x12345678

    unsigned long gvLong=0x23456789;

    ovid main(void)

    { unsigned char array[10], *p;

    p=malloc(10 * sizeof(char))

    while(1)

    }

    A..text段

    B..data段

    C..bss段

    D.堆空间


    正确答案:C

  • 第2题:

    4。填空: 在图2和图3所示控制画面中, 内部变量有()个.


    39

  • 第3题:

    1、下段程序中变量a,b以及常数120, 250分别存放在进程的哪个内存段中?static int a = 120; void modify(void) { int b; scanf("%d", &b); a += b + 250; }

    A.a在数据段,所有的C语言常量都在数据段,所以,除了b之外,全在数据段

    B.变量a和常量120在数据段,b在用户栈段,250在指令段

    C.a和120在数据段,b和250在用户栈段

    D.无论常量还是变量,都是程序处理的数据,所以都在数据段


    简析:本例中并未说明VAR字节单元是带符号数还是无符号数,读者在使用判断转移指令时可任意选用。若当作带符号数,应使用JG、JL、JGE、JLE等指令,如参考程序;若当作无符号数,则应使用JA、JB、JAE、JBE等指令。

  • 第4题:

    进程P1、P2、P3、P4、P5的前趋关系图如下所示:

    若用PV操作控制这5个进程的同步与互斥,程序如下: 程序中空a和空b处应分别为(48),空c和空d处应分别为(49);空e和空f处应分别为(50)。

    A.A

    B.B

    C.C

    D.D


    正确答案:B
    根据前驱图,P2进程需要等待Pl进程的通知,故需要利用P(SI)操作测试P1进程是否运行完,P2进程运行结束需要利用V操作分别通知P3和P4进程,所以用V(S2)操作通知P3进程,用V(S3)操作通知P4进程。根据前驱图,P3进程开始运行前必须等待P2和P4进程的通知,需要用P(S2)操作测试P2进程是否运行完,用P(S4)操作测试P4进程是否运行完,P2进程运行结束需要利用V(s5)操作通知P5进程。根据前驱图,P4进程开始运行前必须等待P2进程的通知,需要用P(S3)操作测试P2进程是否运行完,故空e应填写P(S3)。P4进程运行结束需要利用V操作通知P3和P5进程,故空g应填写V(S4)V(S6)。

  • 第5题:

    8、关于下面程序中的变量和常量分布的内存区域说法错误的是 #include <stdio.h> #include <stdlib.h > static char array2[] = {"dddd"}; char array3[100]; int main() { short b; char array1[]="aaaa"; char *p; p = (char *)malloc(10*sizeof(int)); strcpy(p,"bbbb"); free(p); return 0; }

    A.指针变量p存放在堆中

    B."bbbb"存放在栈中

    C.array3数组存放在静态存储区

    D.本题中指针变量p指向的内存空间在堆中

    E."bbbb"存放在常量区

    F.array2存放在静态存储区


    变量可以先使用,后定义