设 p 和 q 是指向同一个 int 类型数组的指针变量且 q>p,k 为 int 类型的变量,则正确 的表达式是( )。
A. k = *(p + q)
B. k = *(q - p)
C. p + q
D. k = *p * (*q)
查看答案
若有:int a[] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}, *p = &a[0], i; 其中 0≤i≤9,则对 a 数组元 素不正确的引用是( )。
A. p[i]
B. *p
C. a[10]
D. *(&a[i])
若有:int *pa[5]; 下列描述中,正确的是( )。
A. pa 是一个指向数组的指针,所指向的数组有 5 个 int 型元素
B. pa 是指向数组首地址的指针
C. pa 是一个具有 5 个元素的指针数组,每个元素是一个 int 型指针
D. 语法错误
下列关于内存泄漏问题的描述,错误的是( )。
A. 需长期稳定运行的服务程序,需要频繁对内存操作且消耗空间较大的程序,通常 对内存泄漏比较敏感
B. 出现内存泄露并不是一定会导致系统发生异常,因为实际中内存耗尽的情况非常 罕见。内存泄露问题的严重程度取决于每次函数调用时遗留内存垃圾的多少和函数 被调用的次数
C. 指针变量所占的内存被释放了,也就意味着它所指向的动态内存也会被自动释放
D. 内存泄漏问题通常需要运行相当一段时间后才能发现
使用 malloc 函数动态分配内存时,下列说法正确的是( )。
A. 分配的内存空间只能使用一个特定的指针访问
B. 总是能获得一个指向所需内存空间首地址的指针
C. 分配的内存空间不用时系统会自动收回
D. 有可能获得空指针