C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 팁&트릭
C++Builder Programming Tip&Tricks
[547] for 문 안의 초기값 지정 부분의 문법.
김태선 [jsdkts] 10585 읽음    2005-12-19 15:13
이거... 팁도 아니고 그냥 잡설에 가깝지만... 모르는 분도 있고..
저처럼 오랜기간 C++ 플밍을 해왔는데도 깜빡 했던 것이라..

for 문안에 변수 선언을 연달아 하는 방법은?

for(int c =0, int d =0; c < 100; c++, d++);
이 문장 여지 없이 에러입니다.

for(int c =0, d =0; c < 100; c++, d++);
이건 아무 문제 없습니다. 이렇게 쓰면 됩니다.

for 문안에 변수 선언의 문제는 마치 for 문 바깥에서의 아래의 선언과 유사합니다.
    int  c = 0, k = 0;
그런데 다음 줄에
    int  d = 0, k = 1;
식으로 하면 k 를 두번 선언했다고 컴파일 에러가 납니다.

하지만 for 문 안에 이렇게 하면
    int  c = 0, k = 0;
    for(int c = 0, k = 2; k < 10; k++, c++);

예.. 아무런 문제가 없습니다.

이렇게 되는 이유는 for 문이 시작할때 하나의 블럭이 시작되기 때문입니다.
{ 블럭이 시작되면 그곳에 선언하는 변수는 블럭 바깥의 변수명과 같아도 별개로 처리 된다는 것은
다 아실 것입니다. 그러므로 위에 k =0 와 k = 2 는 엄연히 다른 변수입니다.

그 동안 for 문의 초기값 부분에 두개의 변수 선언이 필요할때 항상 하나는 바깥에 빼서 선언해왔다는....
ㅜㅜ;

알아도 몰라도 플밍에 전혀 지장없는 잡설이었습니다.

+ -

관련 글 리스트
547 for 문 안의 초기값 지정 부분의 문법. 김태선 10585 2005/12/19
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.