構造体を初期化する入力に数行あります。入力ファイルに次のような行が表示されるたびに:
something1 = (struct something2){ something3, something4};
私はそれを次のように変換する必要があります:
init_something2( &something1, something3, something4);
次の関数を使用しましたが、動作します。
sed -e 's/\([a-zA-Z0-9]*\)\s*=\s*(\s*struct\s\([a-zA-Z0-9]*\)\s*)\s*{\s*\([a-zA-Z0-9]*\)\s*,\s*\([a-zA-Z0-9]*\)\s*}\s*;/init_\2( \&\1, \3, \4);/g'
私の質問は、どのように変更して、多くの入力に対して機能するようにするかです。任意の数の入力を行うように変更できますか。たとえば、次のようにします。
something = ( struct something2) {something3, something4, something5, something6..};
なるべき
init_something2( &something1, something3, something4, something5, something6..);
(括弧と中括弧に注意してください)どうもありがとう!