将 C while 循环翻译成 Pascal
translating a C while loop to Pascal
我正在翻译一个 C 程序并有以下循环:
while (octaves--) {
/* do stuff */
}
应该是:
while (octaves > 0) do
begin
// do stuff
dec(octaves);
end;
或者应该在循环内容之前递减?
提前致谢。 :)
这是 c 代码的最小示例
#include <stdio.h>
int main(){
int i = 3;
while(i--){
printf("%x,\n",i);
}
return 0;
}
这会打印
2,
1,
0,
同样的程序可以写成
int main(){
int i = 3;
while(i){
i--;
printf("%x,\n",i);
}
return 0;
}
产生相同的输出。此代码现在可以直接翻译成 pascal。
while (i > 0) do
begin
dec(i);
// do stuff
writeln(i);
end;
我正在翻译一个 C 程序并有以下循环:
while (octaves--) {
/* do stuff */
}
应该是:
while (octaves > 0) do
begin
// do stuff
dec(octaves);
end;
或者应该在循环内容之前递减?
提前致谢。 :)
这是 c 代码的最小示例
#include <stdio.h>
int main(){
int i = 3;
while(i--){
printf("%x,\n",i);
}
return 0;
}
这会打印
2,
1,
0,
同样的程序可以写成
int main(){
int i = 3;
while(i){
i--;
printf("%x,\n",i);
}
return 0;
}
产生相同的输出。此代码现在可以直接翻译成 pascal。
while (i > 0) do
begin
dec(i);
// do stuff
writeln(i);
end;