itgle.com

以下程序的输出结果是()。includeusing namespace std;void fun(char**q){++q;cout以下程序的输出结果是( )。 #include<iostream> using namespace std; void fun(char**q) { ++q; cout<<*q<<end1; } main() { static char*s[]={"HI","HELL0","TEST"}; char**p; p=s; fun(p); system("PAUSE"); retu

题目
以下程序的输出结果是()。includeusing namespace std;void fun(char**q){++q;cout<<*

以下程序的输出结果是( )。 #include<iostream> using namespace std; void fun(char**q) { ++q; cout<<*q<<end1; } main() { static char*s[]={"HI","HELL0","TEST"}; char**p; p=s; fun(p); system("PAUSE"); return 0; }

A.为空

B.HI

C.HELL0

D.TEST


相似考题
更多“以下程序的输出结果是()。#include<iostream>using namespace std;void fun(char**q){++q;cout<<* ”相关问题
  • 第1题:

    若有如下程序:include using namespace std;int main(){ char *p="abcdefgh",*r; lon

    若有如下程序: #include <iostream> using namespace std; int main() { char *p="abcdefgh",*r; long *q; q=(long *)p; q++; r=(char *)q; cout<<r<<end1; return 0; } 上述程序的输出结果是( )。

    A.abcdefgh

    B.0

    C.abcd

    D.efgh


    正确答案:D
    解析:本题定义了一个字符型指针变量p,并通过赋初值让它指向了一个字符串。还定义了另一个字符型指针变量r和一个长整型指针变量q。首先通过语句“q=(long*)p;”,把p的地址值强制转换为长整型地址值并赋值给q,然后执行“q++;”,地址值增加了4,执行语句“r=(char*)q;”,把长整型指针变量q的值再强制转换成字符型地址值并赋给r,r的值应为字符串中字符“e”的地址。最后输出r指向的字符串。

  • 第2题:

    以下程序段的输出结果是 ______。includevoid main(){ char*p[5]={"ABCD","EF","GHI

    以下程序段的输出结果是 ______。 #include<iostream.h> void main(){ char*p[5]={"ABCD","EF","GHI","JKL","MNOP"}; char **q=p; int i; for(i=0;i<=4;i++) cout<<q[i]; }

    A.ABCDEFGHIJKL

    B.ABCD

    C.ABCDEFGHIJKMNOP

    D.AEGJM


    正确答案:C

  • 第3题:

    以下程序的结果是()。includevoid main(){char*p="abcdefgh",*r;long*q;q=(1ong*)P;

    以下程序的结果是( )。 #include<iostream.h> void main() {char*p="abcdefgh",*r; long*q; q=(1ong*)P; q++; r=(char*)q; cout<<r<<endl;=

    A.defg

    B.cdef

    C.ghab

    D.efgh


    正确答案:D

  • 第4题:

    若有如下程序段: include using namespace std; int main() {char*p="abcdefgh",*r;l

    若有如下程序段:

    include <iostream>

    using namespace std;

    int main()

    {

    char *p="abcdefgh",*r;

    long *q;

    q=(long *)p;q++;

    r=(char *)q;

    cout<<r<<end1;

    return 0;

    }

    该程序的输出结果是______。


    正确答案:efgh
    efgh 解析:本题定义了一个字符型指针变量p,并通过赋初值让它指向了一个字符串,还定义了另一个字符型指针变量r和一个长整型指针变量q。首先通过语句“a=(long*)p;”,把p的地址值强制转换为长整型地址值并赋值给小然后执行“q++”,地址值增加了4,执行语句“r=(char*)q;”,把长整型指针变量q的值再强制转换成字符型地址值并赋给r,r的值应为字符串中字符“e”的地址。最后输出r指向的字符串。

  • 第5题:

    以下程序的结果是 include void main( ) { char * p="abcdefgh",* r; long *

    以下程序的结果是 #include<iostream.h> void main( ) { char * p="abcdefgh",* r; long * q; q=(long * )p; q++; r=(char * )q; cout < < r < < end1;}

    A.defg

    B.cdef

    C.ghab

    D.efgh


    正确答案:D
    解析:C++语言规定,如果指针变量q已指向数组中的一个元素,则(q++指向同一数组中的下一个元素(而不是将q的值简单的加1)。本题中q是long型指针,每个long型数据占内存字节数为4,所以q++则由当前位置向右移动4个字节,所以最后显示出的是efgh。注意:请注意*(P++)与(*p)++的区别。