千家信息网

argc,argv和C/C++易错题分析

发表于:2026-11-03 作者:千家信息网编辑
千家信息网最后更新 2026年11月03日,这篇文章主要讲解了"argc,argv和C/C++易错题分析",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"argc,argv和C/C++易错题分析"吧
千家信息网最后更新 2026年11月03日argc,argv和C/C++易错题分析

这篇文章主要讲解了"argc,argv和C/C++易错题分析",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"argc,argv和C/C++易错题分析"吧!

argc即argument count. 顾名思义,是用户在命令行内输入的参数个数。

argv即argument vector. 是用户输入的参数vector库(数组)

int main(int argc ,char *argv[])

char *argv[] 即指针数组([]优先级别高于*,于是就里面的每个元素都是char*类型,要理解好 char (*argv)[] 和 char *argv[]的区别),每一个元素内,存的都是参数,这些参数都是字符串。其实就是vector库。如果你这里暂时不理解,没关系,往下看。

它其实就是记录了程序被执行时所传入的参数。包括打开程序的那条语句。如我保存了一个程序为test.exe, 在命令行执行这个程序并顺便带几个参数:

test.exe x y z

这样的话argc就是四个参数,分别为text.exe、x、y、z. 输出的话将是这样的:

代码:

#include

using namespace std;

int main(int argc, char* argv[]) {

cout << "参数个数是: " << argc << endl << "分别是:" << endl;

for (int i = 0; i < argc; ++i)

cout << argv[i] << endl;

return 0;

}

可见它其实就是将参数存在argv这个vector库)内,你想输出的话可以直接输出这些参数。

理清楚优先级别:

1.

int x,y,z;

x=y=1;

z=x++,y++,++y;

printf("%d,%d,%d\n",x,y,z);

其中:

z=x++,y++,++y;

这是逗号表达式,最终结果为最后一个数。这么说你可能会以为答案是2,2,3.

但实际上不是的,这里不是z=(x++,y++,++y);如果是这样的才是2,2,3.

所以正确答案应该是2,3,1.

2.

设a、b、c、d、m、n均为int型变量,且a=5、b=6、c=7、d=8、m=2、n=1,则逻辑表达式(m==a

你或许会以为是1,但实际上大小号的优先级别大于==号,所以答案应该是0

小心取整问题

假定x和y为double型,则表达式(x=2,y=x+5/2)的值是__C__ 。

你或许会以为答案是4.500000,但是5/2会自动向下取整,所以真实答案是4.000000.

static局部变量只被初始化一次,下一次依据上一次结果值

#include

using namespace std;

int f(int a)

{

int b = 0;

static int c = 3;

b++; c++;

return(a + b + c);

}

int main()

{

int a = 2, i;

for (i = 0; i<3; i++) printf("%d\n", f(a));

return 0;

}

答案是7 8 9,我不想排版太难看,所以还是自己脑补空格变换行吧!

小心宏定义

#include

#define ABC(x) x*x

int main()

{

int a = 3, b;

b = ABC(a + 1);

printf("b = %d \n", b);

return 0;

}

这里的答案是7。原因是什么呢?因为宏定义只是单纯的替换而已。其实b=a+1*a+1=7.

感谢各位的阅读,以上就是"argc,argv和C/C++易错题分析"的内容了,经过本文的学习后,相信大家对argc,argv和C/C++易错题分析这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是,小编将为大家推送更多相关知识点的文章,欢迎关注!

参数 答案 就是 错题 分析 程序 个数 级别 表达式 学习 输出 元素 内容 变量 命令 实际 实际上 数组 用户 结果 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 湖北九亚互联网络科技有限公司 互联网科技垄断 麻工互联网科技 狮子座互联网科技有限公司 北京禾田雨橡互联网科技 万达互联网科技 融贸通互联网科技 互联网科技公司介绍 恒银科技与互联网金融 江阴互联网智能科技产品进口 米聚互联网科技南京有限公司排面 宇信科技在杭州互联网排第几 上海互联网科技公司ppt 互联网风格科技公司名称 扫呗互联网科技有限公司 广州梦谷互联网科技有限公司领导 中国新注册互联网科技 绵阳真晨互联网科技有限公司 互联网科技大佬云集 东风日产互联网科技公司叫什么 花魁咖啡 互联网科技公司的优势 金融科技创新监管互联网金融 中正互联网科技招聘 天速互联网络科技有限公司 互联网科技人工智能实验室 迪庆互联网科技招生 世界互联网领先科技成果获奖 陕西云淼互联网科技公司 中国互联网公司的科技投入
0