2개의 댓글이 있습니다.
-
-
WeissBlume -
struct에 이름이 없는게 문제가 아니라 struct형 변수의 이름이 없는게 문제입니다(struct { /* ... */ } NAME;).
8년 전 link
-
-
정회원 권한이 있어야 커멘트를 다실 수 있습니다. 정회원이 되시려면 온라인 저지에서 5문제 이상을 푸시고, 가입 후 7일 이상이 지나셔야 합니다. 현재 문제를 푸셨습니다.
빠비
안녕하세요.
튜토리얼의 ENDIANS 문제를 풀다가 컴파일오류가 나서 질문드립니다.
아래는 제 코드입니다.
이 코드를 답으로 제출하니
submission.cpp:15:2: error: ISO C++ prohibits anonymous structs [-Wpedantic]
};
^
라는 오류가 떴었습니다.
검색해보니 union안에 있는 struct에 이름이 정의되어있지 않아 생기는 오류같은데 struct에 value라는 이름을 주고
conv_Endian.value.val1 = Endian.value.val4;
라고 고쳐써보니 아예 컴파일이 되지 않았었습니다.
#pragma GCC diagnostic ignored "-Wpedantic"
이 문장을 넣어주니 컴파일 에러가 없고 실행되던데 저 문장이 어떤 이유로 컴파일이 되게 만들었는지, conv_Endian.value.val1 = Endian.value.val4; 썼을 때 컴파일이 왜 되지 않았었는지 궁금합니다.
8년 전