首页 > 编程语言 >C++ int main(int argc, char *argv[])的参数

C++ int main(int argc, char *argv[])的参数

时间:2024-04-19 23:44:20浏览次数:34  
标签:main int argv char 参数 argc

一般来说int main有两种写法

 

第一种就是不带参数的

int main()
{
return -1;
}

 

第二种就是带有参数的

int main(int argc, char *argv[])
{
return -1;
}

这里argc是参数的个数,实际调用函数时不用手动传入,其是根据*argv参数列表内的个数进行统计

实际传入的参数都存入*argv列表的第二位开始,其第一位是程序的名字,示例如下:

 

假设我们编写程序源码

int main(int argc, char *argv[])
{
   std::cout<<argc<<std::endl;  
  std::cout<<argv[0]<<std::endl;  
   std::cout<<argv[1]<<std::endl;  
  std::cout<<argv[2]<<std::endl;    
   std::cout<<argv[3]<<std::endl;  
    return -1;
}

编译源码为可执行文件HELLO,运行HELLO,并传入参数1,2,3,其会以字符串的形式保存到列表里

./HELLO 1 2 3

运行结果是

4        //输入参数个数
./HELLO  //第一个参数,为程序名字
1            //第二个参数,实际为手动传入的第一个参数
2        
3

 

标签:main,int,argv,char,参数,argc
From: https://www.cnblogs.com/toriyung/p/18147017

相关文章

  • Robust mapping of spatiotemporal trajectories and cell–cell interactions in hea
    这篇论文主要介绍了一种名为"Robustmappingofspatiotemporaltrajectoriesandcell-cellinteractionsinhealthyanddiseasedtissues"的新方法,该方法能够在健康和疾病组织中对细胞过程进行可靠的映射,同时研究细胞间的相互作用。在生物组织中,细胞类型、局部组成和状态、分......
  • mac intellij idea卡顿排查解决
    最近我的idea异常卡顿,一顿谷歌查找后,解决。如下1.调整idea的JVM内存 Help->EditcustomVMOptions-Xms2048m-Xmx2048m-XX:ReservedCodeCacheSize=512m-XX:+IgnoreUnrecognizedVMOptions-XX:+UseG1GC-XX:SoftRefLRUPolicyMSPerMB=50-XX:+UseStringDeduplication-XX:AutoBoxC......
  • SystemVerilog -- 6.2 Interface Bundles
    Introduction涵盖了对接口的需求,如何实例化接口并将其与设计连接起来。设计有两种编写方式:通过使用现有接口名称专门使用该接口通过使用可以将任何接口传递到的泛型接口句柄显然,当接口定义更新到具有不同名称的较新版本时,泛型方法效果最佳,并且需要支持使用它的旧设计。Examp......
  • NL2SQL实践系列(2):2024最新模型实战效果(Chat2DB-GLM、书生·浦语2、InternLM2-SQL等)
    SQL实践系列(2):更多模型使用以及工业级案例NL2SQL基础系列(1):业界顶尖排行榜、权威测评数据集及LLM大模型(SpidervsBIRD)全面对比优劣分析[Text2SQL、Text2DSL]NL2SQL基础系列(2):主流大模型与微调方法精选集,Text2SQL经典算法技术回顾七年发展脉络梳理NL2SQL进阶系列(1):DB-GPT-H......
  • MySQL里 没有 boolean类型 怎么办?MySQL 里的 tinyint(1)
    之前我写的博客:https://www.cnblogs.com/del88/p/12538470.html由于之前的博客,没有使用markdown懒得重新排版了,重新写一篇;直接看AI给的答案吧:MySQL里没有boolean类型怎么办?在MySQL中,确实没有专门的boolean数据类型。不过,MySQL通常使用TINYINT(1)作为布尔值的替代。当使用T......
  • intel网卡MAC地址刷写方法
    准备一个优盘,格式化为FAT32或FAT格式。将eeupdate64e.efi文件拷入U盘根目录中。服务器插U盘开机上电,通过F11键启动菜单选择从UEFIShell启动;输入blk0:进入优盘(一定要带冒号);查看当前网卡端口列表,键盘输入eeupdate64e.efi,然后按ENTER键;其中IntelI350为集成网卡......
  • [Testing adn BDD] Introduction to Test and Behavior Driven Development
    TheImportanceofTestingThevalueoftesting"Ifit'sworthbuilding,it'sworthtesting.Ifit;snotworthtesting,whyareyouwastingyourtimetoworkngonit?"--ScottAmbler,agiledate.orgDesignprinciplesforApolloUsea......
  • mysql中replace into用法
    前言replaceinto跟insertinto功能类似,不同点在于:replaceinto首先尝试插入数据到表中如果发现表中已经有相同的数据(根据主键或者唯一索引判断)则先删除原来的数据,然后插入新的。否则,直接插入新数据。注意:插入数据的表必须有主键或者是唯一索引!否则的话,replaceinto会......
  • [Rust] Intro Lifetimes
    Thefollowingcodehascompilererror:fnjazz(years:&[i64])->Releases{leteighties:[i64]=&years[0..2];letnineties:[i64]=&years[2..4];Releases{years,eighties,nineties,}}let......
  • Got socket error trying to find package flutter_lints at https://pub.dev Flutter
    最近想继续玩下Flutter,发现pub.dev居然被封锁了,试了下网上的方案,都不可行,尝试组合了一下,用下面的方案解决了。第一步:找到这个文件D:\flutter\packages\flutter_tools\lib\src\http_host_validator.dart把下面的地址修改为:constStringkPubDev='https://pub-web.flutter-io......