const int* 변수면 const int* 받아야 되여
아가야..
int* p2=p1; 여기서 문제가 발생해. 컴파일러가 *p2로 접근해서 수정할 위험이 있기에 컴파일 오류를 발생시킴.
const int* p2=p1;로 처리해야 해. 그럼 *p2=20은 물론 안되구
책에서 보기는 오류가 난다고 봤는데여 컴에선 컴파일 못돌려보고 ideone에서 돌려봤는데 20으로 결과나오더라구여...
ideone.com/CzRf48 여기여
보통 저런 경우는 컴파일러 때문이에요. 릴리즈모드 디버그 모드라구 아시나영?
아아 너무 깊이 가는거누.. 저런 경우는 컴파일러에서 변수 안정성 관련해서 제한을 많이 푼 경우에요. gcc컴파일러 일 가능성이 높네여
몰라여 ㅠㅠ
원래 안되는게 맞아요. 컴파일러 때문이에영
네 감사합니다
허용해주는건 컴파일러 옵션 조정해주면 가능해요. 원래는 안되는게 맞아여
const 사용은 c/c++에서 프로젝트 하다보면 안정성 문제로 많이 나오는 부분이라 미리미리 습관 들여서 잘 해놓으세여!!
네^^
const int* 변수면 const int* 받아야 되여
아가야..
int* p2=p1; 여기서 문제가 발생해. 컴파일러가 *p2로 접근해서 수정할 위험이 있기에 컴파일 오류를 발생시킴.
const int* p2=p1;로 처리해야 해. 그럼 *p2=20은 물론 안되구
책에서 보기는 오류가 난다고 봤는데여 컴에선 컴파일 못돌려보고 ideone에서 돌려봤는데 20으로 결과나오더라구여...
ideone.com/CzRf48 여기여
보통 저런 경우는 컴파일러 때문이에요. 릴리즈모드 디버그 모드라구 아시나영?
아아 너무 깊이 가는거누.. 저런 경우는 컴파일러에서 변수 안정성 관련해서 제한을 많이 푼 경우에요. gcc컴파일러 일 가능성이 높네여
몰라여 ㅠㅠ
원래 안되는게 맞아요. 컴파일러 때문이에영
네 감사합니다
허용해주는건 컴파일러 옵션 조정해주면 가능해요. 원래는 안되는게 맞아여
const 사용은 c/c++에서 프로젝트 하다보면 안정성 문제로 많이 나오는 부분이라 미리미리 습관 들여서 잘 해놓으세여!!
네^^