|
|
检测点8-22
1.在源文件c0826.c中,初始化器{hello","world"}是用来初始化数组的,为什么字面串"hello"与"world"还要转换为指针(请参考数组-指针转换的条件)?
答:这两个字面串用来初始化数组的元素,元素的类型是指针,自然要转换为指针。
2.若a和b是int类型的对象且a的值为10086,b的值为65533;对象ap有两个元素,元素的类型是指向int的指针且分别指向a和b。那么,如何通过这两个元素来打印对象a和b的值呢?请编写程序实现上述功能。
参考答案:
# include <stdio.h>
int main (void)
{
int a = 10086, b = 65533, * ap [2] = {& a, & b};
//方法一:
//printf ("%d,%d\n", * ap [0], * ap [1]);
//方法二:
for (size_t x = 0; x < sizeof ap / sizeof * ap; x ++)
printf ("%10d", * ap [x]);
}
|
|