コマンドライン引数

投稿者: | 2019年7月22日

意外とすぐ忘れるのでメモ

#include <iostream>
int main( int numArguments, char const* arguments[])
{
	for( int index = 0; index < numArguments; ++index)
	{
		std::cout << arguments[index] << std::endl;
	}
	return 0;
}
// 実行例
$ test.exe abc def 123 456
test.exe
abc
def
123
456

c# は2パターン。普通は上のパターンを使ってる。自分の名前も知りたい場合は下のパターンですかね?

class Program
{
	static void Main( string[] arguments)
	{
		foreach( var param in arguments)
		{
			System.Console.WriteLine( param);
		}
	}
}
// 実行例
$ test.exe abc def 123 456
abc
def
123
456

class Program
{
	static void Main()
	{
		string[] arguments = System.Environment.GetCommandLineArgs();
		foreach( var param in arguments)
		{
			System.Console.WriteLine( param);
		}
	}
}
// 実行例
$ test.exe abc def 123 456
test.exe
abc
def
123
456

golang は2パターン。普通は flag を使うのかな?Parse() で翻訳できるので。

package main
import (
	"flag"
    "fmt"
)
func main(){
	flag.Parse()
	arguments := flag.Args()
	for _,param := range arguments {
		fmt.Println( param)
	}
}
// 実行例
$ test.exe abc def 123 456
abc
def
123
456

package main
import (
    "fmt"
	"os"
)
func main(){
	arguments := os.Args
	for _,param := range arguments {
		fmt.Println( param)
	}
}
// 実行例
$ test.exe abc def 123 456
test.exe
abc
def
123
456

コマンドライン引数」への1件のフィードバック

  1. ピンバック: 言語仕様比較 c++ c# Lua golang | | ぶろねこ -Blog on NEKOTEAM-

コメントを残す