c언어를 독학하고 있습니다. <div>static변수에 관해서 공부하던 중에 궁금한점이 생겨서 이렇게 질문글을 올립니다.</div> <div><br></div> <div><div>#include <stdio.h></div> <div><br></div> <div>int AddToTotal(int num)</div> <div>{</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span><font color="#ff0000">static total=0;</font></div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>total+=num;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>return total;</div> <div>}</div> <div>int main(void)</div> <div>{</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>int num, i;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>for(i=0; i<3; i++)</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>{</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>printf("입력%d: ", i+1);</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>scanf("%d", &num);</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>printf("누적: %d \n", AddToTotal(num));</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>}</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>return 0;</div> <div>}</div></div> <div><br></div> <div>문제를 풀던 도중에 제가 저기 저 빨간색 글씨부분에 실수를 했습니다.</div> <div>원래는 static int total=0; 이라고 적었어야 했는데 실수로 static total=0;으로 적어버렸습니다.</div> <div>근데 제대로 실행이 됩니다;;;;;</div> <div>그래서 순간 궁금증이 생겼습니다.</div> <div>제대로 실행이 된 이유와. 저렇게 했을때 문제점이 무엇인지 궁금합니다.</div> <div><br></div> <div>참고로 프로그램은 visual c++ 2010 사용하고 있습니다.</div>
댓글 분란 또는 분쟁 때문에 전체 댓글이 블라인드 처리되었습니다.