c - c 中不寻常的结构

标签 c struct

两个字符串组成的数组应该怎么理解?

static struct S1 {
    char c[3], *s;
} s1 = {"abc", "def" };

可能问题不正确,但我很难理解它是如何工作的

最佳答案

S1.c 有 3 个字节的空间,S1.s 是一个指向字符串的指针。

第一部分定义结构:

struct S1 {
    char c[3], *s;
};

下一部分创建该类型的实例并使用一些值对其进行初始化:

static struct S1 s1 = {"abc", "def" };

static 不是结构定义的一部分。它指的是实例变量的可见性。

关于c - c 中不寻常的结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54055933/

相关文章:

c - UDP套接字池会不会提高数据报传递的成功率和效率?

将文件中的单词复制到结构对象,我遇到段错误

c - 我无法使用 -> 访问结构数组的元素

c - typedef 一个结构到与该结构同名的点

在 C 中计算极大数的平方根

c - 代码中出现奇怪的段错误

c - C 动态结构数组中的动态结构数组

c - 当我尝试从函数返回二维结构时如何解决这个问题

c - 在 char 数组指针内赋值

c++ - 如何在Linux C++中创建多个间隔计时器