首页 > 试题广场 >

在以下代码段下划线处填写以下哪个选项可以输出good。 ()

[单选题]
在以下代码段下划线处填写以下哪个选项可以输出good ()
    char a[] = "ggood";
    char b[] = "goodd";
    char *c;
    _________
    printf(c);

  • c = a+1;
  • c = b; c[5] = '\0';
  • *c = "good";
  • 编译出错或其他都不对
char *c 只是定义了一个字符的位置,并不能够容纳多个字符,除非在一开始就定义成:char *c = "good" ;
发表于 2022-01-05 15:54:03 回复(0)
B选项把c[5]改成c[4],因为数组下标从0开始。C选项char *c 只是定义了一个字符的位置,并不能够容纳多个字符,除非在一开始就定义成:char *c = "good" ;
发表于 2022-01-23 14:42:18 回复(2)
指针其实就是数组名.当指针字符型指针负值为a+1时 实质c就是a字符串初始位置为a[1]
发表于 2022-02-22 03:00:33 回复(0)
输出的不是a[1]的地址而是起始地址为a[1]的字符序列
发表于 2022-03-08 11:01:03 回复(0)
printf("%s",c);才对吧?我还以为是我记错了?
发表于 2023-03-17 18:34:40 回复(0)
char类型内存为1一个字节,所以a+1就是第二个g
发表于 2023-02-11 14:13:40 回复(0)
咋感觉选d
发表于 2023-02-05 20:47:05 回复(0)
这道题应该选D吧?
发表于 2022-01-30 11:23:17 回复(2)
在c语言中printf函数可以接受一个字符串为参数,当其遇到的第一个参数是指针时,会按照字符串进行处理,输出结果是没问题的,但是更安全的写法是printf("%s",c);
发表于 2024-03-25 20:11:17 回复(0)
注意*是取出地址的元素 &是取出地址 *( a+1)取出以a[1]为起始地址的字符序列
发表于 2023-11-11 09:22:30 回复(0)
C选项: [Error] invalid conversion from 'const char*' to 'char' 
发表于 2023-10-03 12:44:05 回复(0)
这是c+吧
发表于 2022-12-10 20:26:58 回复(0)
c是字符指针,c=a+1指向的是a[1]的地址
发表于 2022-07-28 15:02:55 回复(0)