声明和修改结构的静态阵列-CPP



我在标题文件中定义了一个结构,它是这样的数组:

struct
{
int a;
 char* b;
 } S_element, s_array*;
static s_array my_data[3] = {1,"first", 2, "second", 3, "third"     };

在源代码中,我包括这样的标题并访问此数组。我正在尝试更改数组元素结构内的字符串变量B的值,但是当我尝试更改struct Member -b的值时,程序正在崩溃。

对不起,此问题代码中的语法错误。到目前为止,我只能使用手机。

我不确定涉及静态成员的概念,并以这种方式初始化数组,而无需用于单个结构元素的卷发括号。

写作 struct{...}a;struct name{...}; name a;

相同

您不能写static s_array my_data[3],因为s_array是struct,而不是类型。

另外,这不是重新启动结构数组的方法。

更改为:

typedef struct{
int a;
 char* b;
 } S_element, *s_array;
static S_element my_data[3] = {{1,"first"}, {2, "second"}, {3, "third"}};

看到我更改为S_Element,因为S_Array是指针,而不是结构。

另外,不要在标题中使用static,仅在功能中。

最新更新