zoukankan      html  css  js  c++  java
  • C 中 main 函数的參数

          看到不同的人写出的 C 或者 C++ 程序时,可能会出现不一样的 main 函数的定义,以下的几种定义方式都是对的:

          int main(void)
          int main(int argc)
          int main(int argc, /*const*/ char** argv)
          int main(int argc, /*const*/ char** argv, /*const*/ char** enviorn)

          这几种方式中。第三种方式是最经常使用的。

    那么,这些參数代表着什么呢?以下,我就以最后一个定义的形式解释这几个參数的定义:

    #include <stdio.h>
    
    /*
    	@description:	描写叙述 main 函数的參数以及各个參数的作用
    	@parameters:
    		argc:执行程序时,输入參数的个数。假设仅仅是输入程序名,那么。argc = 1
    		argv:这是一个字符串指针。指向每个參数
    		environ:当前系统的环境变量
    */
    
    int main(int argc, const char** argv, const char** environ)
    {
    	int i = 0;
    	
    	printf("argc : %d
    ", argc);
    	
    	for (i = 0; i != argc; ++i)
    	{
    		printf("argv[%d] : %s
    ", i, argv[i]);
    	}
    	
    	for (i = 0; environ[i] != ''; ++i)
    	{
    		printf("environ[%d] : %s
    ", i, environ[i]);
    	}
    	
    	return 0;
    }

          好吧,编译执行下吧,这里。我为了突出说明 argc 的作用,在參数上加了几个没实用的词,执行截图例如以下所看到的:



          既然以上几种定义的形式都对,那么,我们应该选择用什么方式去定义 main 函数呢?这个,没有准确的答案。就是当你须要什么时,你就那样定义。假设你不须要參数,那么。你全然能够把參数列表设置成 void;一般,我们不用最后一种定义,由于,假设我们须要查看环境变量时,有专门的命令实现这样的操作。

          假设你不确定应该选择哪一种定义的方式,那么,选择第三种方式是一个不错的选择。

  • 相关阅读:
    C# 控制台程序如何输出Messagebox
    C# VS如何整个项目中查找字符串
    C# .NET using ManagementObjectSearcher提示缺少引用怎么办
    [React] Write a Custom State Hook in React
    [GCP] Goolge compute Engine
    [Kubernetes] Defining a Pod with YAML
    [Kubernetes] Kubectl and Pod
    [Schematics] 1. Copy and Manipulate Template
    [Schematics] 0. Schematics "Hello World"
    [RxJS] Subject asObservable() method
  • 原文地址:https://www.cnblogs.com/liguangsunls/p/6898146.html
Copyright © 2011-2022 走看看