최근에 책에서이 코드를 읽었습니다. 이 코드의 의미와이 코드의 작동 방식을 정의 할 수 있습니까?이 루핑 작동 방식 C#
int i = 0;
for (; i != 10;)
{
Console.WriteLine(i);
i++;
}
최근에 책에서이 코드를 읽었습니다. 이 코드의 의미와이 코드의 작동 방식을 정의 할 수 있습니까?이 루핑 작동 방식 C#
int i = 0;
for (; i != 10;)
{
Console.WriteLine(i);
i++;
}
반복됩니다.
이미 i=0
을 설정 했으므로 루프는 for
루프의 해당 섹션을 생략했습니다. 또한 마지막에 변수를 증가시키기 때문에 생략 된 변수도 있습니다.
그들은 기본적으로 for 루프를 while 루프로 변경했습니다.
for (int i = 0; i != 10; i++)
{
Console.WriteLine(i);
}
가 잎 것을 제외 : 정상적인 형태로 볼 쉽게 경우
int i = 0;
while(i != 10)
{
Console.WriteLine(i);
i++;
}
뿐만 아니라 더 큰 범위를 제공하기 위해 루프 외부에서 i를 초기화하는 경우에도 루프 내 조건에서 증분자가 수행 될 수 있습니다. i + = 2 또는 i-- 또는 for 루프의 세 번째 부분에 지정된 것이 무엇이든 보상 할 필요없이. 하지만 예, 잠시 생각한 것과 같습니다. – Jacob
@Jacob, 범위 잡기에 +1, 나는 그것에 대해서 생각조차하지 않았습니다. –
, 그것은이의 거의 상당의 :
아마로 더 우아한 것 루프가 완료된 후 i
사용자가 사용할 수 있습니다. 범위가 for
인 경우에만 적용됩니다. 제외
for (int i = 0; i != 10; i++) {
Console.WriteLine(i);
}
가변 i
가 루프 밖에 선언되고, 그래서 더 큰 범위가요 :
그것은이 루프와 동일이다.
루프에서 첫 번째 매개 변수는 초기화이고 두 번째 매개 변수는 조건이며 세 번째 매개 변수는 증분입니다 (실제로는 거의 모든 것이 될 수 있음). 이 책은 구성 및 증분이 실제로 실행되는 코드의 위치로 이동하는 방법을 보여줍니다. 여기서 변수 i
int i = 0;
while (i != 10) {
Console.WriteLine(i);
i++;
}
또한 외부 루프 선언되기 때문에 범위는 크다 : 루프는 등가
while
루프로서 도시 될 수있다. 당신처럼, "를"사용하는
"하면서"이 코드는 (당신의 코드의 맥락에서 - 명시된가 동일하지 않습니다.), 다시 작성할 수 있습니다 같이
for (int i = 0; i != 10; i++)
Console.WriteLine(i);
기본적으로 초기화 식과 증분 식은 for 루프 식에서 가져온 것으로 순수하게 선택 사항입니다.
이for (int i = 0; i != 10; i++) {
Console.WriteLine(i);
}
같은 코드를 작성하지 마십시오 :
게시 한 내용이 * 동등한 내용이 아니라는 점에 유의하십시오. 범위가 다릅니다. –
Thanks @Nick, 귀하의 제안에 따라 편집 됨. –
은 동일합니다. for-loops의 목적은 그냥 추악하고 패배입니다.
은 문에 대한
같이 C# 1 규격에서 정의된다 (피 이니셜; 위한 조건; 위한 반복자) 삽입 명령문
용 초기화 자, 용 조건, d for iterator은 선택 사항입니다. 코드는 필요하지 않기 때문에 작동합니다. 흥미로운 내용
는 : 가 조건 생략되는 경우에 대한 조건이 참 수득 있었다면 같이, 루프는 동작. 그래서, 그것은 (휴식, 고토, 던져, 또는 반환)를 떠나 점프 문을 필요로 무한 루프의 역할을한다.int i
이 맨 위에 선언되었으므로 for 루프에 없습니다. 이 매우 흥미 롭
for(int i = 0; i!=10; i++)
{
/// do your code
}
처럼, 보이지 않는 그 전에 ... – Yoda
@Yoda - 아마 그 나쁜 형태 때문이다. 법적이지만 나쁜 형식입니다. –
놀랍게도이 질문에 대한 upvotes가 없습니다. 기본 사항으로 돌아가려면 +1하십시오. –