강의

멘토링

커뮤니티

인프런 커뮤니티 질문&답변

Ad Astra님의 프로필 이미지
Ad Astra

작성한 질문수

홍정모의 따라하며 배우는 C언어

12.7 블록 영역의 정적 변수

static함수 포인터 리턴

작성

·

235

0

VS 2022 를 쓰는데 static으로 선언해준 변수를 포인터로 반환해줬을 때 Warning이 아니라 Error로 뜨네요.

물론 count함수, static함수 둘다 입니다.

컴파일러 차이일까요.

error C2040: 'static_count': 'int *()' differs in levels of indirection from 'void ()'

int ct = 0;

return &ct;

static int ct = 0;

return &ct;

답변 1

0

안녕하세요!

강의에선 되는데 동일한 코드가 질문자님 환경에선 안되는건가요? 

함수 프로토타입 코드 붙여넣기 안해주셔서... 함수 리턴 타입을 어떻게 지정해주셨는지 알 수가 없지만 (코드 일부분만 보면 제가 원인을 알기 어려울 때가 있어서 가급적 전체 코드 기재해주실 것을 부탁드립니다 ㅎㅎ)

저 에러 메세지만 보면 함수 리턴 타입을 void 로 작성 하신게 아닐까 하는 생각이 듭니다. 자료형이 서로 안 맞을 때 저런 에러가 발생하거든요! 

우선 저는 2019 인데 에러나지 않습니다.  

Ad Astra님의 프로필 이미지
Ad Astra

작성한 질문수

질문하기