ここに私の問題があります: コマンド a[1] を含む配列があり、その後にいくつかのコマンド引数 a[2]、a[3]、...
私がする必要があるのは次のとおりです
- cmd と引数の組み合わせで構成される文字列を作成します。例:
cmd arg1 arg2 arg3
- そのコマンド文字列を実行します
これが私がそれを行う方法です(疑似コード):
- 各引数の長さを事前に計算し、配列に格納します
- 組み合わせを取得する (GNU Scientific Library を使用)
- 文字列を割り当てるために必要なサイズをバイト単位で計算します (cmd の長さ + 1 + arg1 の長さ + 1 + argn-1 + 1) (一般に、空白の場合は +1、\0 の場合は末尾に )
- strcat を使用して文字列を作成します
- コマンド文字列を実行する
まあ、それは機能しますが、意図的にstrcatを使用するのは実際に効率的/正しい方法なのだろうかと思います。
助言がありますか?