davidmou 发表于 2023-12-10 16:28:49

指针数组

char *lang[] = {"C","Basic"};的含义是什么

FishC 发表于 2023-12-10 16:31:00

这段代码的含义是定义了一个指针数组,其中包含两个字符串常量:"C"和"Basic"。

具体解释如下:
- `char *lang`:表示`lang`是一个指向字符型的指针。
- `[]`:表示`lang`是一个数组。
- `= {"C","Basic"}`:表示初始化这个数组中的值,将" C"和"Basic "这两个字符串的地址赋给数组元素。注意,字符串常量的地址会赋给指针,而不是字符串内容本身。

可以通过以下代码来验证:

#include <stdio.h>

int main() {
    char *lang[] = {"C", "Basic"};
   
    // 输出数组元素
    printf("%s\n", lang);// 输出 "C"
    printf("%s\n", lang);// 输出 "Basic"
   
    return 0;
}

在上面的代码中,`lang`是一个指针数组,我们可以通过索引来访问数组元素并打印出相应的字符串内容。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。

xiaotubie 发表于 2023-12-11 17:01:05

char *lang[] = {C的地址, Basic的地址};
页: [1]
查看完整版本: 指针数组