C++ の一般的な使用法 - int main (int argc, char *argv[])

1. main 関数のデフォルトパラメータ

int main()

第二に、メイン関数のパラメーターはデフォルトではありません

int main(int argc, char **argv)
int main(int argc, char* argv[]) 
//两种写法效果一样

2.1 パラメータの説明

  • argc: プログラムのコンパイル時に、出力パラメーターの数 +1 (追加されたパラメーターはメイン プログラムの名前);
  • argv: これらの引数へのポインター引数

3. デモ例

3.1 デモ1

メイン プログラム main.cpp を demo1 フォルダーに書き込みます。main.cpp のコードは次のとおりです。

#include<iostream>
using namespace std;
int main( int argc , char** argv ){
    
    
    cout << "The argv is : "<< endl ;
    for(int i=0 ; i<argc ; i++)
         cout << argv[i] << endl ;
    cout << "the argc is : "<< argc << endl ; 
    return 0;
 }

ターミナルでコンパイル:

g++ main.cpp -o main

ターミナルでターゲット ファイルを実行する

./main 'Automatic' 'driving' 'test'

結果は次のとおりです。

./main 'Automatic' 'driving' 'test'
The argv is : 
./main
Automatic
driving
test

3.2 デモ2

メイン プログラム main.cpp を demo1 フォルダーに書き込みます。main.cpp のコードは次のとおりです。

#include <iostream>
using namespace std;

double power(double base,double exponent)
{
    
    	
	int res=base;
	if(base==1)
	{
    
    
	return 1;
	}
	for(int i=1;i<exponent;i++)
	{
    
    
		res=res*base;
	}
	return res;
}

int main(int argc,char *argv[])
{
    
    
	if(argc<3)
	{
    
    
		cout<<"Usage:"<<argv[0]<<endl;
		return 1;
	}
	double base =atof(argv[1]);
	int exponent=atoi(argv[2]);
	cout<<"result"<<endl<<power(base,exponent)<<'\n';
	return 0;
}

ターミナルでコンパイル:

g++ main.cpp -o main

ターミナルでターゲット ファイルを実行する

./main 2 3

結果は次のとおりです。

./main 2 3
result
8

Guess you like

Origin blog.csdn.net/LiuXF93/article/details/123041478