有如下代码:
#include <stdio.h>
int main(int argc, char *argv[])
{
int i = 0;
while(i < argc) {
printf("arg %d: %s\n", i, argv[i]);
i++;
}
char *states[] = {
"California", "Oregon",
"Washington", "Texas"
};
int num_states = 4;
i = 0;
while(i < num_states) {
printf("state %d: %s\n", i, states[i]);
i++;
}
return 0;
}
执行结果:
$ make ex11
cc -Wall -g ex11.c -o ex11
$ ./ex11
arg 0: ./ex11
state 0: California
state 1: Oregon
state 2: Washington
state 3: Texas
现在做如下修改:
目的是使用while
循环将argv
中的值复制到states。
#include <stdio.h>
int main(int argc, char *argv[])
{
int i = argc;
while(i >= 0) {
printf("arg %d: %s\n", i, argv[i]);