0

重複の可能性:
C で区切り文字を使用して文字列を分割する

シェルをシミュレートするプログラムを Linux で作成しています。基本的な考え方は、最初に fgets を使用してユーザー入力の 1 行を取得することです。これは のようなものであると想定されています"ls -l"。次に、この文字列を "ls" と "-l" に解析し、次のように 2 次元配列を作成しますchar *array[] = {"ls","-l"},execvpe引数: 1 つ目も入力からのものです。つまり、上記の例では "ls" で、2 つ目は配列、3 つ目はいくつかのディレクトリを指定する配列のようなポインターです。

問題は、「ls -l」のような文字列を 2 次元配列に解析することです。malloc私は配列を作成するつもりです。C で文字列を解析するのは非常に不便です。

"asd dg rg grhr"のような文字列を のような配列に解析する良い方法はありますか{"asd","dg","rg","grhr"}

また、別の方法でシェルをシミュレートすることに関するアドバイスも大歓迎です。

4

0 に答える 0