itgle.com

若有语句char *line[5];,以下叙述中正确的是 ______。A.定义line是一个数组,每个数组元素是一个基类型为char的指针变量B.定义line是一个指针变量,该变量可以指向一个长度为5的字符型数组C.定义line是一个指针数组,语句中的*号称为间址运算符D.定义line是一个指向字符型函数的指针

题目

若有语句char *line[5];,以下叙述中正确的是 ______。

A.定义line是一个数组,每个数组元素是一个基类型为char的指针变量

B.定义line是一个指针变量,该变量可以指向一个长度为5的字符型数组

C.定义line是一个指针数组,语句中的*号称为间址运算符

D.定义line是一个指向字符型函数的指针


相似考题
参考答案和解析
正确答案:A
解析:由于运算符[]优先级比*高,所以“char*line[5];”相当于“char*(line[5];”,表示line是一个数组,每个数组元素是一个基类型为char的指针变量。
更多“若有语句char *line[5];,以下叙述中正确的是 ______。A.定义line是一个数组,每个数组元素是一个基 ”相关问题
  • 第1题:

    若有语句:char*line[5],以下叙述中正确的是

    A.定义line是一个数组,每个数组元素是一个基类型为char的指针变量

    B.定义line是一个指针变量,该变量可以指向一个长度为5的字符型数组

    C.定义line是一个指针数组,语句中的*号称为间址运算符

    D.定义line是一个指向字符型函数的指针


    正确答案:A
    解析:理解复杂定义要掌握两点:一、右结合原则.本题中的定义char*line[5];等价于char*(line[5]);;二、自外向内分解成typedef语句。char*(line[5]);等价于typedefchar*A;Aline[5];其中A被typedef定义成字符指针的别名,然后line被定义成A的一维数组,即字符指针的一维数组。再来看看行指针的定义char(*line)[5];它应该被分解成typedefcharB[5];B*line;其中B被定义成包含5个元素的一维字符数组,然后line被定义成指向B的指针,即指向包含5个元素的一维字符数组的指针。所以两者切不可混淆了,后者的括号不能省略。故本题应该选择A。

  • 第2题:

    若有语句:char *line[5];下列叙述中正确的是 。

    A.定义line 是一个数组,每个数组元素是一个基类型为char 的指针变量

    B.定义line 是一个指针变量,该变量可以指向一个长度为5 的字符型数组

    C.定义line 是一个指针数组,语句中的*号称为间址运算符

    D.定义line 是一个指向字符型函数的指针


    A 解析:由于运算符[]优先级比*高,所以“char*line[5];”相当于“char*(line[5];”,表示line是一个数组,每个数组元素是一个基类型为char的指针变量。

  • 第3题:

    若有语句:char *name[5];以下叙述中正确的是

    A.name是一个数组,每个数组元素是一个char*类型的指针变量

    B.name是一个指针变量,该变量可以指向一个长度为5的字符型数组

    C.name是一个指针数组,语句中的*号称为间址运算符

    D.name是一个指向字符型函数的指针


    B本题考查typledef重新声明一种结构体类型,那么T为结构体类型,而不是结构体变量,所以B选项正

  • 第4题:

    若有语句:Char * line[5];,以下叙述中正确的是( )。

    A.定义line是一个数组,每个数组元素是一个基类型为Char的指针变量

    B.定义line是一个指针变量,该变量可以指向一个长度为5的字符型数组

    C.定义line是一个指针数组,语句中的*号称为间址运算符

    D.定义line是一个指向字符型函数的指针


    正确答案:A
    c语言中[]比*优先级高,因此line先与[5]结合,形成line[5]形式,这是数组形式,它有5个元素,然后再与line前面的”*”结合,表示此数组是一个指针数组,每个数组元素都是一个基类型为char的指针变量。

  • 第5题:

    若有语句 char *line[5];,以下叙述中正确的是().

    A.定义 line 是一个数组,每个数组元素是一个基类型为 char 的指针变量

    B.定义 line 是一个指针变量,该变量可以指向一个长度为 5 的字符型数组

    C.定义 line 是一个指针数组,语句中的*号称为间址运算符

    D.定义 line 是一个指向字符型函数的指针


    A 解析:由于运算符[]优先级比*高,所以“char*line[5];”相当于“char*(line[5];”,表示line是一个数组,每个数组元素是一个基类型为char的指针变量。