int argc, char *argv[] 是什么意思?

2024-01-27

在许多 C++ IDE 和编译器中,当它为您生成 main 函数时,它看起来像这样:

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

当我在没有 IDE 的情况下仅使用命令行编译器编写 C++ 代码时,我输入:

int main()

没有任何参数。这意味着什么?它对我的计划至关重要吗?


argv and argc是如何将命令行参数传递给main()在 C 和 C++ 中。

argc将是指向的字符串数argv。 (实际上)这将是 1 加参数数量,因为实际上所有实现都会将程序名称添加到数组前面。

变量被命名为argc (参数计数) and argv (参数向量)按照惯例,但可以给它们任何有效的标识符:int main(int num_args, char** arg_strings)同样有效。

它们也可以完全省略,产生int main(),如果您不打算处理命令行参数。

尝试以下程序:

#include <iostream>

int main(int argc, char** argv) {
    std::cout << "Have " << argc << " arguments:\n";
    for (int i = 0; i < argc; ++i) {
        std::cout << argv[i] << "\n";
    }
}

运行它./test a1 b2 c3将输出

Have 4 arguments:
./test
a1
b2
c3
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

int argc, char *argv[] 是什么意思? 的相关文章

  • C++ 维护子类对象的混合集合

    如果我在这里错过了一个相当基本的概念 我很抱歉 但我正在尝试弄清楚如何维护多个类类型的集合 所有类类型都派生自同一个父类 并且在检索它们时仍然可以访问它们的特定于子类的方法从集合中 作为上下文 我有一个基类 BaseClass 和许多类 例
  • 为什么在连接两个字符串时 Python 比 C 更快?

    目前我想比较 Python 和 C 用来处理字符串的速度 我认为 C 应该比 Python 提供更好的性能 然而 我得到了完全相反的结果 这是 C 程序 include
  • GetType() 在 Type 实例上返回什么?

    我在一些调试过程中遇到了这段代码 private bool HasBaseType Type type out Type baseType Type originalType type GetType baseType GetBaseTyp
  • 如何在C(Linux)中的while循环中准确地睡眠?

    在 C 代码 Linux 操作系统 中 我需要在 while 循环内准确地休眠 比如说 10000 微秒 1000 次 我尝试过usleep nanosleep select pselect和其他一些方法 但没有成功 一旦大约 50 次 它
  • 为什么在 WebApi 上下文中在 using 块中使用 HttpClient 是错误的?

    那么 问题是为什么在 using 块中使用 HttpClient 是错误的 但在 WebApi 上下文中呢 我一直在读这篇文章不要阻止异步代码 https blog stephencleary com 2012 07 dont block
  • 当一组凭据下的计划任务启动的进程在另一组凭据下运行另一个程序时,Windows 是否有限制

    所以我有一个简单的例子 其中我有应用程序 A 它对用户 X 本地管理员 有一些硬编码的凭据 然后它使用硬编码的绝对路径启动带有这些凭据的应用程序 B A 和 B 以及 dotnet 控制台应用程序 但是它们不与控制台交互 只是将信息写入文件
  • unordered_map 中字符串的 C++ 哈希函数

    看起来 C 标准库中没有字符串的哈希函数 这是真的 在任何 c 编译器上使用字符串作为 unordered map 中的键的工作示例是什么 C STL提供模板专业化 http en cppreference com w cpp string
  • 在Linux中,找不到框架“.NETFramework,Version=v4.5”的参考程序集

    我已经设置了 Visual studio 来在我的 Ubuntu 机器上编译 C 代码 我将工作区 我的代码加载到 VS 我可以看到以下错误 The reference assemblies for framework NETFramewo
  • 将 Long 转换为 DateTime 从 C# 日期到 Java 日期

    我一直尝试用Java读取二进制文件 而二进制文件是用C 编写的 其中一些数据包含日期时间数据 当 DateTime 数据写入文件 以二进制形式 时 它使用DateTime ToBinary on C 为了读取 DateTime 数据 它将首
  • 识别 Visual Studio 中的重载运算符 (c++)

    有没有办法使用 Visual Studio 快速直观地识别 C 中的重载运算符 在我看来 C 中的一大问题是不知道您正在使用的运算符是否已重载 Visual Studio 或某些第三方工具中是否有某些功能可以自动突出显示重载运算符或对重载运
  • 在视口中查找 WPF 控件

    Updated 这可能是一个简单或复杂的问题 但在 wpf 中 我有一个列表框 我用一个填充数据模板从列表中 有没有办法找出特定的数据模板项位于视口中 即我已滚动到其位置并且可以查看 目前我连接到了 listbox ScrollChange
  • 为什么我的单选按钮不起作用?

    我正在 Visual C 2005 中开发 MFC 对话框应用程序 我的单选按钮是 m Small m Medium 和 m Large 它们都没有在我的 m Summary 编辑框中显示应有的内容 可能出什么问题了 这是我的代码 Pizz
  • C++ new * char 不为空

    我有一个问题 我在 ASIO 中开发服务器 数据包采用尖头字符 当我创建新字符时 例如char buffer new char 128 我必须手动将其清理为空 By for int i 0 i lt 128 i buffer i 0x00
  • 将数组作为参数传递

    如果我们修改作为方法内参数传递的数组的内容 则修改是在参数的副本而不是原始参数上完成的 因此结果不可见 当我们调用具有引用类型参数的方法时 会发生什么过程 这是我想问的代码示例 using System namespace Value Re
  • 实体框架中的“it”是什么

    如果以前有人问过这个问题 请原谅我 但我的任何搜索中都没有出现 它 我有两个数据库表 Person 和 Employee 对每个类型的表进行建模 例如 Employee is a Person 在我的 edmx 设计器中 我定义了一个实体
  • 使用 omp_set_num_threads() 将线程数设置为 2,但 omp_get_num_threads() 返回 1

    我有以下使用 OpenMP 的 C C 代码 int nProcessors omp get max threads if argv 4 NULL printf argv 4 s n argv 4 nProcessors atoi argv
  • 为boost python编译的.so找不到模块

    我正在尝试将 C 代码包装到 python 中 只需一个类即可导出两个函数 我编译为map so 当我尝试时import map得到像噪音一样的错误 Traceback most recent call last File
  • 是否可以在不连接数据库的情况下检索 MetadataWorkspace?

    我正在编写一个需要遍历实体框架的测试库MetadataWorkspace对于给定的DbContext类型 但是 由于这是一个测试库 我宁愿不连接到数据库 它引入了测试环境中可能无法使用的依赖项 当我尝试获取参考时MetadataWorksp
  • 如何将十六进制字符串转换为无符号长整型?

    我有以下十六进制值 CString str str T FFF000 如何将其转换为unsigned long 您可以使用strtol作用于常规 C 字符串的函数 它使用指定的基数将字符串转换为 long long l strtol str
  • OpenCV SIFT 描述符关键点半径

    我正在深入研究OpenCV的SIFT描述符提取的实现 https github com Itseez opencv blob master modules nonfree src sift cpp 我发现了一些令人费解的代码来获取兴趣点邻域

随机推荐

  • 查找图像中的图像

    我正在寻找检测另一图像中的图像的最佳方法 我有一个小图像 想找到它在较大图像中出现的位置 这实际上是屏幕截图 从概念上讲 它就像 沃尔多在哪里 在更大的图像中进行搜索 有没有有效 快速的方法来实现这一点 速度比记忆更重要 Edit 内部 图
  • 如何使用 VideoWriter 从 OpenCV 打开 GStreamer 管道

    我正在使用 OpenCV VideoCapture 捕获视频帧 捕获工作正常 因为我可以使用这样的框架 cv VideoCapture cap v4l2src device dev video1 videoscale videorate v
  • Android 不显示 logcat 消息

    它仅显示我的应用程序的错误消息 这是 Navon 铂金 10 我尝试使用 adb 设置日志级别的 setprop 但没有运气 UPDATE 安卓工作室 最新 没有过滤器 adb 和 Logcat 识别的设备 仅显示错误消息 安卓 6 0 纳
  • 预取后从缓存中选取图像

    我正在使用 Kingfisher 框架来预取图像 Kingfisher框架的链接是 https github com onevcat Kingfisher https github com onevcat Kingfisher 这是我编写的
  • 无法通过 sudo 使用 RVM 安装的 Ruby

    我已成功配置 RVM 以使用 Ruby 1 9 2 一切都很好 但是当我尝试使用以下命令运行 Ruby 时sudo它说找不到 RVM 或 Ruby ruby v ruby 1 9 2p0 2010 08 18 revision 29036
  • 有哪些很棒的在线数据库建模工具? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • request.POST 包含 django 中的查询字符串时的示例

    当 request POST 包含 django 中的查询字符串时 请发布示例代码 因为我认为我的 django 版本有问题 EDIT 你不能 查询字符串总是在 GET 中 这是我的问题 如果您的请求是邮寄的 request method
  • 错误:转换为非标量类型

    我正在为一项作业创建一组派生类 我被指示使用字符数组 C 字符串 当我编译时 我不断收到错误 Homework11 cpp In function int main Homework11 cpp 72 error conversion fr
  • 在 Whatsapp 云 API 的模板标头中添加示例图像

    我正在使用 WhatsApp 云 API 做一个项目 我需要创建一个带有媒体标题的模板 我创建了一个带有媒体标题但没有示例图像的模板 但它被拒绝了 所以我想在 Node js 中创建一个带有示例图像的模板 带有媒体标题的模板 为模板添加示例
  • Rcpp:如何确保 NumericMatrix 的深度复制?

    假设我有一个 Rcpp NumericMatrix A 我想将 A 的相同副本 不是指针副本 复制到另一个 Rcpp NumericMatrix B 中 这是完成这项工作的正确方法吗 Rcpp NumericMatrix B Rcpp cl
  • 架构注册表中的向后兼容性问题和不确定性

    我有一个用例 我有一个 JSON 我想生成架构并从 JSON 中记录并发布记录 我已经配置了值序列化器 并且架构设置是向后兼容的 第一个 JSON 字符串 json n id 1 n name Headphones n price 1250
  • virtualenv:无法访问 lib:没有这样的 virtualenv 或站点目录

    我正在使用 Google Cloud Platform 创建一个基于 Django 的 http API 它使用 Google 的云 SQL API 和机器学习 API 我在我的电脑上制作了一个 django mysql 应用程序 并且能够
  • 复选框可以替代验证码吗?

    复选框是否提供了在网站上使用验证码的替代方法 我想我需要使用验证码进行用户注册 相反 如果我为 通过单击此处我同意 之类的条款添加一个复选框 可以解决机器人问题吗 或者除了复选框之外还需要验证码吗 您可以使用复选框做的一件事是制作honey
  • 范围(len(列表))或枚举(列表)? [复制]

    这个问题在这里已经有答案了 其中哪一个会被认为更好 更清晰 更快 更 Pythonic 我不关心列表的内容L 到底有多长 a f n for n in enumerate L or a f n for n in range len L 如果
  • 无法在不和谐中向 Cog 添加命令,py

    我试图使用 cogs 在 python 中制作一个简单的机器人 但是每当我运行我的代码时 当命令明确存在时 它会说找不到命令 我已经尝试了一切 但找不到任何解决方案 任何帮助深表感谢 所以我有2个文件 一个包含齿轮和设置功能 另一个包含机器
  • RTE 显示我自己的 CSS 类作为选择的正确配置是什么?

    RTE 的配置随每个 大 版本而变化 现在我已经安装了第一个 7 6 我需要配置 RTE 以便编辑者可以为段落 跨度或表格设置特殊的类 例如编辑器应该能够选择表格 bootstrap 的默认样式 table striped table bo
  • iOS - 根据百分比用多种颜色填充bezierPath

    我在 Objective C 中画了一个 UIBezierPath 并用红色填充它 现在 我想根据百分比用多种颜色填充路径 例如 我想用 20 的绿色填充路径 用红色填充剩余的 80 彼此重叠 不是渐变 我还想要填充和描边之间有几个像素的间
  • ElasticSearch 在匹配查询中考虑词序

    假设我的索引有两个文档 富酒吧 富酒吧 当我对 bar foo 进行常规匹配查询时 两个文档都正确匹配 但它们获得相同的相关性分数 但是 我希望评分时单词的顺序很重要 换句话说 我希望 bar foo 有更高的分数 因此 我尝试将匹配查询放
  • 如何批量添加文件夹名到文件名?

    我有一个像这样的文件夹结构 1 1 master jpg 1 2 master jpg 1 3 master jpg 2 1 master jpg 2 2 master jpg 2 3 master jpg 我需要将所有图像导入到网站 但文
  • int argc, char *argv[] 是什么意思?

    在许多 C IDE 和编译器中 当它为您生成 main 函数时 它看起来像这样 int main int argc char argv 当我在没有 IDE 的情况下仅使用命令行编译器编写 C 代码时 我输入 int main 没有任何参数