问题详情

有以下程序: #include <iostream> using namespace std; char *x[]={"First", "Second", "Third" }; void f(char *z[ ]) { cout<<*z++<<end1; } int main ( ) { char **y; y=x; f(y); return 0; }


A、产生语法错误

B、First

C、Secpnd

D、Third

时间:2022-01-07 15:32 关键词:

答案解析

B
解析:程序首先定义全局指针数组x,并赋初值。在函数f()中,语句“cout*z++end1;”是输出*z指向的字符串,然后指向下一个指针。由于在主函数中,指针y已初始化指向指针数组x,所以执行f(y)后,程序输出指针数组x中的第一个字符串"First"。