给argv[]赋值
时间: 2023-07-07 17:10:41 浏览: 115
通过实例简单了解Python sys.argv[]使用方法
5星 · 资源好评率100%
在 C 语言中,`argv[]` 是一个用于存储命令行参数的字符串数组,其中 `argv[0]` 存储程序的名称,`argv[1]`、`argv[2]` 等依次存储传递给程序的参数。如果要给 `argv[]` 赋值,一般有两种方法:
1. 在命令行中传递参数:在程序启动时,可以在命令行中传递参数,这些参数会被存储在 `argv[]` 数组中。例如,假设有一个程序 `test`,可以在命令行中输入以下命令:
```
$ test arg1 arg2 arg3
```
这样就会将 `arg1`、`arg2`、`arg3` 依次存储到 `argv[1]`、`argv[2]`、`argv[3]` 中。
2. 在程序中手动赋值:如果需要在程序中手动给 `argv[]` 赋值,可以将字符串指针存储到 `argv[]` 数组中。例如,可以定义一个字符串数组 `args`,然后将其指针存储到 `argv[]` 中:
```c
char *args[] = {"arg1", "arg2", "arg3"};
int argc = sizeof(args) / sizeof(args[0]); // 参数个数为数组长度
char **argv = args; // 将字符串指针数组的指针存储到 argv 中
```
这样就可以手动给 `argv[]` 赋值了。
需要注意的是,手动赋值时需要保证字符串指针的有效性,也就是这些字符串必须是存储在内存中的,否则会导致未定义行为。另外,手动赋值时需要同时设置 `argc` 变量为参数个数,否则在程序中使用 `argc` 时会出错。
阅读全文