• 实操:main(int argc,char ** argv) 输出main函数的参数


    C++Primer5第6.24题
    题目:编写一个main函数,接收两个实参,并将实参连接成string输出。
    代码:

    #include<iostream>
    #include<string>
    using namespace std;
    int main(int argc, char* argv[]){ //char* argv[]等同于char** argv
    	string str = "";
    	for (int i = 0; i != argc; ++i){
    		str += argv[i];
    	}
    	cout << str << endl;
    	system("pause");
    	return 0;
    }
    

    直接在VS中,调试运行,明面上并看不出在哪输入参数(其实是有的,就是略麻烦),这里介绍一种方法:
    进入*.exe文件所在文件夹,在文件夹的地址导航栏输入cmd后回车,打开终端(这样打开的终端,其路径就是当前文件夹,很方便)。在命令行中输入以下3条命令进行测试:

    Microsoft Windows [版本 6.1.7601]
    版权所有 (c) 2009 Microsoft Corporation。保留所有权利。
    
    //第一次尝试:带双引号,正确的可执行文件名,成功
    E:Visual Studio 2013ProjectsC++Primer5Debug>"C++Primer5.exe" 2 hello main
    C++Primer5.exe2hellomain
    请按任意键继续. . .
    
    
    //第二次尝试:带双引号,当前文件夹不存在的可执行文件名,失败
    E:Visual Studio 2013ProjectsC++Primer5Debug>"C++Primer.exe" 2 hello main
    '"C++Primer.exe"' 不是内部或外部命令,也不是可运行的程序
    或批处理文件。
    
    
    //第三次尝试:不带双引号,正确的可执行文件名,成功
    E:Visual Studio 2013ProjectsC++Primer5Debug>C++Primer5.exe 2 hello main
    C++Primer5.exe2hellomain
    请按任意键继续. . .
    

    可以发现,只要正确输入可执行文件名称,不管加不加双引号括起来都是可行的。

  • 相关阅读:
    2019-06-2 java学习日记
    2019-06-1 java学习日记
    2019-05-31 java学习日记
    2019-05-30 java学习日记
    2019-05-29 java学习日记
    2019-05-28 java学习日记
    2019-05-27 java学习日记
    2019-06-03 Java学习日记 day24 多线程
    2019-06-02 Java学习日记 day23 递归练习
    2019-06-01 Java学习日记 day22 io其他流
  • 原文地址:https://www.cnblogs.com/dindin1995/p/13059139.html
Copyright © 2020-2023  润新知