내가 코드 짠 거 중에 char abc[50] = "" 이런 식으로 배열을 쓰는 게 있었는데 팀장님이 좋지 않은 문법이다 char abc[50] = { 0, } 이렇게 바꿔라 라고 하는데 내가 찾아보니까 "" 이렇게 초기화 하는 거랑 {0,} 이렇게 초기화 하는 거랑 배열 전체에 0으로 초기화 되는 건 같다고 하는데 둘 사이에 뭔 차이가 있는 거임?
- dc official App
댓글 10
앞에껀 컴파일러따라 다를거 같은데
ㅇㅅㅇ(61.253)2020-08-07 13:39
답글
메탈충(threeme)2020-08-07 13:46
{ 0 ,} 이 메모리에 어떻게 쌓이는지를 직관적으로 보여줌 - dc App
익명(118.235)2020-08-07 13:44
답글
가독성 차이지 못 쓸 건 아니라는 건가 - dc App
메탈충(threeme)2020-08-07 13:47
답글
사실 저 방식을 쓰는 목적이 스트링 리터럴을 char buffer에 strcpy 하는거잖아 - dc App
익명(118.235)2020-08-07 13:48
답글
결과는 같지만, 목적이 다르니 지양하라는 뜻이겠지 - dc App
익명(118.235)2020-08-07 13:48
답글
메탈충(threeme)2020-08-07 13:50
={0,} 은 vla 빼고 어디다 갖다박아도 돌아가는걸로 암
익명(39.7)2020-08-07 13:50
답글
구조체도 이걸로 전부 0으로 초기화 가능한걸로 아는데... 모-던 c만 되는건지 틀딱 c에서도 되는건지 잘 모르겠네
앞에껀 컴파일러따라 다를거 같은데
{ 0 ,} 이 메모리에 어떻게 쌓이는지를 직관적으로 보여줌 - dc App
가독성 차이지 못 쓸 건 아니라는 건가 - dc App
사실 저 방식을 쓰는 목적이 스트링 리터럴을 char buffer에 strcpy 하는거잖아 - dc App
결과는 같지만, 목적이 다르니 지양하라는 뜻이겠지 - dc App
={0,} 은 vla 빼고 어디다 갖다박아도 돌아가는걸로 암
구조체도 이걸로 전부 0으로 초기화 가능한걸로 아는데... 모-던 c만 되는건지 틀딱 c에서도 되는건지 잘 모르겠네