main函数带的参数使用原理

 从一道题引出的,题目已知答案。实验截图如下(借鉴CSDN博客)。求解释一些困惑

  1. for 内的计算方法 ( 等价于 n = n * 10 + i 吗?)

  2. CSDN博客提出的第一个方法,即

    ”项目—>属性—>配置属性—>调试—>命令参数,在命令参数中输入,每个参数之间用空格隔开“,

    试验多次发现无效,不过讲道理应该是对的。如果是对的,求原理。(即命令行参数的编写?)

https://img4.mukewang.com/5b154e93000182fb10800800.jpg

【注:已参考过N个这类 https://zhidao.baidu.com/question/295883003.html  不必再贴过来了(lll¬ω¬)】 

小尘子
浏览 1097回答 1
1回答

onemoo

for 内的计算方法 ( 等价于 n = n * 10 + i 吗?)你是想问 n = n * 10 + *argv[i] - '0' 等价于 n = n * 10 + i 吗?  这当然是不等价的啊!图片中的方法: *argv[i] 取第 i 个参数的第一个字符(因为每个参数都是被当作字符串的),和 '0' 做减法得到这个数字的数值(也就是每个参数的第一位上的数)。这样 n = n * 10 + 数值 就可以把这个数放到相应的位上,循环构造最终的结果。而 n = n * 10 + i,这样 i 不就成了从 1 循环到“参数个数”了吗?  最终 n 的值就和各个参数的内容无关了呀,只会构造出 123... 这样的结果。CSDN博客提出的第一个方法,即......如何在 IDE 中运行时输入相关的参数是 IDE 设置的事,我不太清楚 VS 该如何设置这些。不过你可以按照图片中所说,不用 IDE 而是直接在命令提示符窗口中试试。
打开App,查看更多内容
随时随地看视频慕课网APP