C 구조체 초기화
다음 C 구조체 초기화 방법 중 문법에 위배되는 것은? (단, C99 기준)
struct MyStruct
{
int a;
int b;
};
// method 1
struct MyStruct m1 = {0, 1};
// method 2
struct MyStruct m2;
m2 = (struct MyStruct){0, 1};
// method 3
struct
{
int a;
int b;
} m3 = {0, 1};
// method 4
struct MyStruct2
{
int a;
int b;
} m4;
m4 = (struct MyStruct2){0, 1};
// method 5
struct
{
int a;
int b;
} m5;
m5 = (struct {
int a;
int b;
}){0, 1};
// method 6
struct MyStruct m6;
m6 = (struct {
int a;
int b;
}){0, 1};
Go 구조체 초기화
다음 Go 구조체 초기화 방법 중 문법에 위배되는 것은?
type MyStruct struct {
a int
b int
}
// method 1
var m1 MyStruct = {0, 1}
// method 2
var m2 = MyStruct{0, 1}
// method 3
var m3 struct {
a int
b int
} = {0, 1}
// method 4
var m4 = struct {
a int
b int
}{0, 1}
// method 5
var m5 struct {
a int
b int
} = struct {
a int
b int
}{0, 1}
// method 6
var m6 MyStruct = struct {
a int
b int
}{0, 1}