c++中argc argv理解
经常发现main函数这样写
int main(int argc, char *argv[]){}
先来看关于char的几种类型
char * ,char ** ,char a[ ] ,char *a[ ]
char * : 指向字符的指针,本质上存储是一个地址,地址中对应的内容为char
char a[ ]:字符数组,数组里面每一个都是一个char
char** a:二级指针,a是一个指向char * 的指针,保存的是char*的地址
char *a[ ] :[ ]的优先级高于*,所以首先是一个数组,数组里面元素为指向char *的指针
c语言没有字符串,用字符数组代替;c语言中字符串常量本质上是一个地址
C语言中操作字符串是通过它在内存中的存储单元的首地址进行的,这是字符串的终极本质
char *s;
s = "China"; //"China"字符串常量,存放的是C的地址
字符指针可以用 间接操作符 *取其内容,也可以用数组的下标形式 [],数组名也可以用 *操作,因为它本身表示一个地址
argc argv
- argc为int:运行程序所带参数个数(包括程序本身名字,这点类似Linux下bash编程)
- char* argv[]:存放内容包括 程序绝对路径+程序运行所带参数(全部转化为字符串)
引用
转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以邮件至 yangbenbo@whu.edu.cn
文章标题:c++中argc argv理解
本文作者:杨本泊
发布时间:2020-01-22, 17:27:07
最后更新:2023-07-09, 07:10:11
原始链接:http://yangbenbo.github.io/2020/01/22/c-中argc-argv理解/版权声明: "署名-非商用-相同方式共享 4.0" 转载请保留原文链接及作者。