我不懂的结构

时间:2019-11-28 12:59:16

标签: c struct typedef

我有这样的结构

typedef struct stdHdrStruct {
  int isou,icd,irec_s,oset;
} StdHdr;

我不知道如何使用它。我从来没有遇到过那样的事情。我如何从中获取信息?例如,我想获取有关isou的信息。

2 个答案:

答案 0 :(得分:3)

定义结构的方式等效于

const input = document.getElementById('my-input')
const prependedText = "This is a prepended text"
const prependedTextLength = prependedText.length

textarea.value = prependedText

textarea.onkeyup = (ev) => {
    if (textarea.value.length < prependedTextLength) {
        textarea.value = prependedText
    }
}

您以与通常相同的方式访问字段typedef struct stdHdrStruct { int isou; int icd; int irec_s; int oset; } StdHdr; ,例如:

isou

如您所见,由于使用了StdHdr el; StdHdr *pEl = malloc( sizeof(*pEl) ); // Pointer to struct el.isou = 5; pEl->isou = 7; 关键字,因此可以使用typedef别名代替完整的StdHdr名称。

答案 1 :(得分:2)

typedef定义了新的 type ,它不会创建变量。

换句话说,像这样的语句

 struct stdHdrStruct x;

相同
StdHdr x;

现在,两种情况下您都可以使用x。例如,如果您想访问isou,可以这样做

 x.isou = 5;

在两种情况下