2014-04-12 2 views
0

do while 루프 구조에서는 대개 변수를 숫자 (이 경우 i)로 선언 한 다음 두 번째 부분에서 증분을 (i+1)으로 만드는 부분이 있습니다. vba에서이 예제를 만들었지 만 데이터베이스에서 데이터를 가져올 때 PHP의 for과 같은 여러 프로그래밍 언어로 구조를 반복 할 수 있습니다. 자, 내가 더 잘 이해하고 싶은 것은 앞에서 언급 한 선언 사이의 관계, 즉 i = some numberi = i + 1입니다. 변수를 선언하고 그 직후에 다른 값을 할당하기 때문에 이것이 해석 문제를 일으키지 않겠습니까? 변수 값의 두 번째 선언 인 i = i + 1, 이전 변수를 호출하는 새 변수 또는 둘 다 동일합니까? 이것은이 질문에 대한 일반적인 오리엔테이션입니다. 두 변수의 특종을 설명하는 것이 이해를 돕는다고 생각합니다. 감사!do while 루프 구조

Sub DoWhile() 
Dim x, i, sum 
x = 10 
i = 1 
sum = 0 
Do While i < x 
sum = sum + i 
i = i + 1 
Loop 
MsgBox “Sum = ” & sum 
End Sub 
+1

사용중인 언어로 태그를 추가하는 것이 좋습니다. – RobP

답변

0

변수 i을 전역 변수로 작성 했으므로 하위 변수의 i에 대한 참조 또는 수정 사항은 모두 동일한 변수에 저장됩니다. 즉이 상기 되 :

Dim i as int 

i = 1 

Do while i < 11 
    MsgBox("The value of i is: " & i) 
    i = i + 1 
Loop 

10으로 메시지 i가 1 ~

프로그램 i = i + 1 발견 10이라는 값을 나타내는 표시하는 것, 컴퓨터 I의 값을이 같은 '본다', 추가 그 중 하나는 변수 i에 결과를 저장합니다.

희망이 있습니다.

1

변수는 실제로 메모리의 한 위치입니다. 그 위치는 어떤 가치도 가질 수 있습니다. i = i + 1로 설정하면 실제로 위치 i에서 값을 가져 와서 1을 더하고 위치 i에 저장합니다. 새로운 변수가 생성되지 않습니다. 컴퓨터가 이것을 해석하는 데는 문제가 없습니다. 신경 쓰지 않는 것은 i의 위치입니다.이 위치는 바뀌지 않습니다. 당신이 거기에서 가치를 몇 번이나 바꿨는지에 상관없이 나는 어디에서 찾을 것인가를 아직도 알고 있습니다.