6 (A064) 计算机内存一般分为静态数据区、代码区、栈区和堆区,若某一指令的操作数之一采用立即数寻址方式,则该操作数位于()
A: 静态数据区
B: 代码区
C: 栈区
D: 堆区
7 (A029) 以下定义整型3行4列的二维数组a并初始化不正确的是()
A:int a[3][4]={0}
B:int a[][4]={0,1,2,3,4,5,6,7,8,9,10,11,12}
C:int a[3][]={0,1,2,3,4,5,6,7,8,9,10,11,12}
D:int a[3][4]={{1,2},{1,2,3},{1,2,3,4}}
8 (A040) 5. 下列函数功能是将pBuf中的连续数字拷贝到pData中生成一个新字符串,关于该函数述叙正确的是:( )
void GetDigitString(char* pData, char* pBuf)
{
char *pTmpData = pData, *pTmpBuf = pBuf;
while (‘\0’ != (*pTmpBuf))
{
if ((‘0’ <= *pTmpBuf) && (‘9’ >= *pTmpBuf))
{
*pTmpData = *pTmpBuf;
pTmpData++;
}
else
{
break;
}
pTmpBuf++;
}
return;
}
A:该函数是正确的
B:生成后的字符串没有在结尾加'\0'结束符,使用该字符串时会有未知的影响
C:对于数字的判断,不能简单的这样判断,而必须要比较它们的ASCII码
D:本函数会导致死循环
9 (A038) 下列程序在X86上的运行结果( )
struct mybitfields
{
unsigned short a : 4;
unsigned short b : 5;
unsigned short c : 7;
}test
void main(void)
{
int i;
test.a=2;
test.b=3;
test.c=0;
i=*((short *)&test);
printf("%d\n",i);
}
A:32
B:45
C:50
D:70