루이스칼 님이 쓰신 글 :
: #include<stdio.h>
:
: int a,b,c;
:
: void main()
:
: {
:
: a=1;
: b=2;
: c=a+b;
: printf("a=%f,b=%f,a+b=%f\n"a,b,c);
: }
위와 같이 돌렸을 경우 데이타 형식 즉 변수는 int로 선언하였으나 출력은 float으로 하셨군요
이와 같은 경우 제대로 출력되지 않는데 아마도 데이타 형식이 맞지 않기 때문일 것입니다.
: #include<stdio.h>
:
: int a,b,c;
:
: void main()
:
: {
:
: a=1;
: b=2;
: c=a+b;
: printf("a=%d,b=%d,a+b=%d\n"a,b,c); <---이부분
: }
위와 같이 고쳐주신다면 별 탈없이 돌아갈 것입니다.
또한 변수를 main함수 밖에서 선언해 준다는 것은 전역변수를 말해주는 경우입니다. 그와 같은경우 보통
(아니라고 한다면 할말 없지만요) 변수에 값을 넣어 선언을 해 줍니다. 이와 같은 전역변수는 굳이 main함수
에만 각 변수의 값이 적용되는 것이 아닌 이하 함수에도 적용이 됩니다.(물론 함수 안에서 값을 변동하지 않
는 경우) 위와같이 변수만 선언을 해주어도 상관없지만 굳이 변수만 선언할 것이라면 전역변수로 사용할
필요가 없지 않을까 생각됩니다. 즐프하세요 ^^ (질문 날짜에 비해 답변시간이 넘 늦은 날짜라 보실거라 생
각되진 않지만요)
|