-2
誰でも私に教えてください。私たちは "system"関数を使用してcの中でいくつかのシェルコマンドを使用しています。さらに私は以下のコマンド、すなわち6,2,8をパラメータとして与えたいと思っています。gawk inside cを使用
gawk -v FIELDWIDTHS='6 2 8' 'NR!=1 && x==$1{printf(" %d:%d",strtonum("0x"$2),strtonum("0x"$3)); next}; {x=$1; printf("%s%s %d:%d", NR==1?"":"\n", $1,strtonum("0x"$2),strtonum("0x"$3))}; END{print ""}' input.txt | sed '/^[0-9a-f]* [0-9:]*$/d' > result.txt
おかげで、任意のヘルプは大歓迎されます。
なぜsystem()を使って呼び出すことができないのですか? –
私はsystem()を使ってみましたが、次のエラーが表示されます:prog.c:73:エラー: 's 'は宣言されていません prog.c:73:error:(未宣言の各識別子は、一度だけ prog.c:73:エラー:表示される各関数について) prog.c:73:エラー:文字列定数の前に構文エラーが発生しました prog.c:73:エラー:プログラム内で '\'が浮いています – mezda
@ user1182722 '$ 1 {prinf \"%d:%d \ "、...、' ...:\ "\\ n \文字列リテラルにクォータとバックスラッシュをエスケープする必要があります。 "、..."など。 –