내부에 다른 구조체 정의가 들어있는 구조체를 초기화하는 방법은 무엇입니까?구조체 초기화 c
예 :
struct foo{
struct foo1{
int a;
int b;
int c;
} abc;
} xyz;
내부에 다른 구조체 정의가 들어있는 구조체를 초기화하는 방법은 무엇입니까?구조체 초기화 c
예 :
struct foo{
struct foo1{
int a;
int b;
int c;
} abc;
} xyz;
현대 C와 가장 쉬운이 지정되어 초기화
struct foo xyz = { .abc = { .a = 56, } };
그러나 C는 중첩 된 유형이없는 것을 조심, 당신의
foo1
또한 글로벌 유형입니다.
일반적으로 사람들은 변수 선언 및 정의에서 foo1
에 대한 식별자 형식 다음에 foo
형식 형식 선언을 분리하는 것을 선호합니다.
나는이 대답을 기대하고 있었다. .. 고마워. –
@JensGustedt는 멋진 현대 C 방식을 보여줍니다. 예전 학교 C 방법은 다음과 같습니다.
struct foo xyz = { { 1, 2, 3 } }; /* sets a, b, c to 1, 2, 3, respectively */
struct foo xyz = { { 1 } }; /* just sets the member "a" to 1
간단한 구조체는 어떻게 초기화합니까? –