在图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.堆空间
第2题:
4。填空: 在图2和图3所示控制画面中, 内部变量有()个.
第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.无论常量还是变量,都是程序处理的数据,所以都在数据段
第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
第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存放在静态存储区