본문 바로가기
프로그래밍/c언어

c언어 경고(warning)

by -현's- 2012. 2. 8.
반응형

 warning C4700: local variable '.identifier' used without having been initialized
-경고 원인
.identifier 의 변수에 대해서 초기화 값을 지정하지 않고 사용하는 경우에 발생

-경고 해결
변수를 초기화 하지 않고 사용하는 것은 프로그램상에서 위험하므로 초기값을 지정해 주는 습관을 들이는게 좋다.





 warning C4001: '.identifier' : unreferenced local variable
-경고 원인
선언한 변수가 사용되지 않는 경우에 나오는 경고이다.




 warning C4244: 'conversion' conversion from 'type1' to 'type2', possible loss of data
-경고 원인
정수나 실수 등 자료형이 맞지 않은 경우 발생

-경고 해결
변수의 사용을 정수나 실수형에 알맞게 선언하고 사용





 warning C4130: '==' : logical operation on address of string constant
-경고 원인
'=='에서 비교하는 값의 종류 같지 않을 경우 발생




 warning C4715 : 'function' : not all control paths return a value
-경고 원인
예를 들어
int fun(int i){
   if(i>=0){
   return 0
  }
}
이라는 함수에서 i가 0보다 작은 값이 들어오면 return하지 않기 때문에 프로그램상에서 버그가 날수 있다.


-경고 해결
if문 밑에 else문을 만들어 모든 가능한 경로에 return 값을 넣어 주면 된다.




 warning C4307 'operator' : integral constant overflow
-경고 원인
예를 들어 int형의 최대값은 2,147,483,647 인데 여기에 30억이라는 값이 들어가게 되면 경고가 발생한다














반응형

댓글