흐린바다가 올린글
http://gall.dcinside.com/board/view/?id=programming&no=519670&page=1
프로그래밍 발로 배움?
프갤 수준 드러나내 ㅋㅋㅋㅋ
애초에 컴파일러 최적화가 저런걸 잡아주지도 않을 뿐더러
그리고 저건 구문상 맞는거라 컴파일 오류가 안나지 --
a=b
b값을 a에 넣은거고
a값이 2가 되니
false는 0 / true는 0이 아닌 값
따라서
if( a=b )는 b값을 a에 대입했으니
if( a )
{
}
이렇게 되고 a값은 2니까 0이 아닌 값이니 true가 되는거지.
무슨 컴파일러가 오류를 안 잡아줘 ㅋㅋ 그리고 댓글도 가관이다 ㅋㅋ
컴파일러랑 전혀 상관 없는데.. 다들 기초가 부족한듯 ㅉㅉ
자바나 하세요 ㅎㅎ c언어는 저같은 머리 좋은 사람들만 하는 거에요.
ture
걍 워닝 띄울수 있는데
vc만 컴파일런가
ICC
포틀랜드 그룹
등등
컴파일러 전체 다 조사해봤니
누가 만든 컴파일러 정책에서 if 내의 대입을 경고 띄우게 헀으면 뜨는거지
ㅇㅇ
시크야 a=b는 애초에 컴파일 오류가 아니라고. 다른 컴파일러도 저건 내가 말한것처럼 잡아줘. 다 해보고 와라
문법 오류는 없는 것 같다야
아니면 내가 렉스 야크 들고 저거만 경고뜨고 if문만 지원하는 언어랑 컴파일러 하나만듬 ㅡㅡ
들어나냐
지엽적이야
나라면 고신뢰성 프로젝트 한다면 컴파일러에서 저런거 잡을수 있게 처리하겠다
빨리 반박해 ㅡㅡ 컴파일러 만들어오게
컴파일러의 intrinsic 에 대해서 이해하지 못한다면 어쩔수 없공
시크야. 애초에 저걸 잡는 컴파일러를 만든다는 발상 자체가 잘못됬지, 저걸 잡는 컴파일러를 만들어버리면 다른 c소스들 호환성은 어떻게 할건데?
그리고 저렇게 조건문안에 대입연산자 쓰는 프로그래머도 많을 텐데, 뭐하러 저걸 넣어?
실수 할까봐? 컴파일러 성능을 높인다고? 아 개인용 컴파일러 쓸꺼면 그렇게 해라
워닝만 띄우는건 상관없지
아이피 보고 구분해라
어짜피 경고수준 정하는건 컴파일러마다 상이한데
시크야 저렇게 짧은 소스 경우에 워닝 하나는 괜찮겟지. 저걸 오류로 잡아버리면 나중에 1만 라인 이상에서 저 오류 하나가 엄청나게 많은 컴파일 오류를 잡을 수 있다는 생각은 안해봣냐?
그래 경고 수준은 컴파일러마다 다른건 맞는데 a=b이건 어떤 컴파일러도 경고로 안잡아준다고 c, c++에서는
컴파일 옵션 수준에서 저걸 검사하는 활성화 옵션 정도로 구현하면 나쁠건 없겠는데
글의 논점을 파악좀 해줘라.. 아니 저렇게 짧은 소스에서는 하나만 잡히지.. 수만 라인넘어가면 저 오류하나가 연달아 다른 경고를 만들고 실제 프로그래머는 저렇게 되면 못 잡는다니까.. 컴파일러 수업 들어본적 없지? 안에 소스가 어떻게 되있는지 본적 있냐?
흐이구 이런걸로 투닥거리네. 당연한거 가지구.
미안해 반정도는 그냥 어깃장을 놓고싶었어
하하하
코세님아 내말이 맞잔아요. 좀 어시좀 해줘요.
시크야 그래도 저런 생각을 한다는거 자체가 좋은 자세다. 아무 생각 없는 사람들보단 낫네
툴에서 워닝 안띄워도 저런건 금방 찾지 못찾으면 머가리가 딘장이든지 눈까리가 황태든지.
코세님은 if(1000 == i ) { } 이런 문법 쓰실거 같은데..
아니라니
오래되신 c , c++ 형들의 트레이드 마큰데..
어떤 컴파일러도 경고 안잡아준다고? ㅋㅋㅋㅋ
경고 잡아주는거 쎄고 쎘는데 ㅡ,.ㅡ
if (!(fp = fopen(.....)) 이런거 예전에 즐겨 쓰다가 망할 경고 시끄러워서 안쓴다. ㅋㅋ
닫는 괄호 하나 빠진건 애교
코세님에게 도전합니다. 전세계적으로 공용으로, 또는 업무상 많이 사용하는 컴파일러 외에 누가 사적으로 만든 컴파일러 제외하고 c,c++에서 조건문안에 a=b 경고 잡아주는 컴파일러 말해보세요. 하나라도 있다면 인정하겠습니다.
잡아주죠 주죠 주죠!!?
잠만
일단 인텔 ICC 옵션걸고 함해봄
오류가 나온다면 자존심을 걸고 시크에게 치킨 기프티콘 쏘겠습니다.
오류가 아니라 경고
스샷 올려주마.
게임셋.
치킨치킨 치킨
시크//됬->됐
off by one 아 실수로 잘못씀..
경고 레벨높이면뜸 그리고 조건문안에서 대입하는거 안좋은 습관