|
프로그래밍을 하다보면..
거의 많은 자료들이 영어입니다.
영어를 어렵게만 느끼지 마시고 한번 해석해 보세요..
생각보다 어렵지 않습니다.
질문하신 내용은 double 형을 float 형으로 전환시켜서 나오는 것입니다.
이런경우 자료형의 크기가 다르기 때문에.. 자료의 손실이 있을수 있습니다.
(Double 형이 더 큽니다.)
이 내용을 경고하는 겁니다.
김경래 님이 쓰신 글 :
:
: 밑의 프로그램 돌려보시면 준회님의 말대로 하니까 변수때문에 생기는 워닝은 사라졌습니다.
: 그런데
: C:\C test\pointer\pointer.cpp(44) : warning C4244: '=' : conversion from 'double' to 'float', possible loss of data
: 이런 게2개가뜨네요 이건 왜뜨나요??
:
:
:
: 조준회 님이 쓰신 글 :
: : 무슨 워닝이 뜨는 것인지 적어 놓지를 않으셨네요..
: :
: : 짐작컨데..
: :
: : a,t,y,q,w,p 변수중 실제로 사용하는 것은 a 밖에 없기때문에..
: : 나오는 것일겁니다.
: : 각 변수들에 아무값이나 대입하면 아마 없어질것 같군요..
: :
: : 그런데.. 아래 처럼 코딩하실거면..
: : kim1~3까지의 함수에 파라미터를 만들 필요가 없습니다.
: :
: : t,y등의 변수가 main에선 아무런 역활을 하지 않고 있습니다.
: : 그럴바에는 각 함수에 지역변수로 만들어 처리하는 것이 좋습니다.
: :
: : 변수통용범위(Scope 법칙)에 대해서 학습이 필요하실겁니다.
: :
: :
: : 김경래 님이 쓰신 글 :
: : : 밑에 플그램에서 에러는 안뜨는데 워닝이 뜹니다.
: : : 왜뜨는지를 모르겠습니다.--;;;
: : : 변수에서 워닝이뜨는데...;;
: : : 돌아가는데는 별상관없이 잘돌아갑니다만--;;
: : : 왠지 워닝도 없앴으면 하는 바램이 있네요--;;
: : : 고수님들 답변 플리즈~
: : :
: : : #include <stdio.h>
: : :
: : : float kim1(int b, int c);
: : : int kim2(int d, int e);
: : : float kim3(int r);
: : :
: : : void main()
: : : {
: : : int a,t,y,q,w,p;
: : : printf("1.삼각형의 넓이");
: : : printf("2.사각형의 넓이");
: : : printf("3.원의 넓이");
: : : scanf("%d",&a);
: : :
: : :
: : :
: : : if (a==1)
: : : {
: : : kim1(t,y);
: : : }
: : : else if (a==2)
: : : {
: : : kim2(q,w);
: : : }
: : : else if(a==3)
: : : {
: : : kim3(p);
: : : }
: : : else
: : : {
: : : printf("번호를 작못 입력하셨습니다");
: : : }
: : : }
: : :
: : : float kim1(int b, int c)
: : : {
: : : float a;
: : : printf("밑변의 길이를 입력해주세요");
: : : scanf("%d",&b);
: : : printf("높이의 길이를 입력해주세요");
: : : scanf("%d",&c);
: : : a=0.5*b*c;
: : : printf("삼각형의 넓이는? %f",a);
: : : return a;
: : : }
: : :
: : : int kim2(int d, int e)
: : : {
: : : int f;
: : : printf("가로의 길이를 입력해주세요");
: : : scanf("%d",&d);
: : : printf("세로의 길이를 입력해주세요");
: : : scanf("%d",&e);
: : : f=d*e;
: : : printf("사각형의 넓이는? %d",f);
: : : return f;
: : : }
: : : float kim3(int r)
: : : {
: : : float g;
: : : printf("반지름의 길이를 입력해주세요");
: : : scanf("%d",&r);
: : : g=3.14*r*r;
: : : printf("원의 넓이는? %f",g);
: : : return g;
: : : }
: : : 즐거운하루되세요
|