私の割り当ては 、「プログラムはメニューを表示することを許可されていません。実行する数学関数のオプションとその引数をメイン関数のパラメーターとして受け取る必要があります」と述べています。プログラムの実行例は次のとおりです (プログラムが c2 と呼ばれるとします)。
./c2 fradd 2/3 5/7
# Expected output: 29/21
私の理解では、 のfFradd()
外で関数を書かなければなりませんint main (int argc, char * argv[])
。次に、その機能を実装します。
私の質問はn1
次のとおりです。引数として与えられた分数をどのように取り、それらを, d1
,n2
に分割しd2
ますか?
(与えられた例を使用して)2/3がargv[]
配列の1つのスペースに保存されることを知っています(それが適切な用語かどうかはわかりませんが、私の主張を理解していただければ幸いです)。プログラムにその引数 ( ) を読み取らせ、2/3 を/argv[2]
として認識させる方法がわかりません。n1
d1
私が見つけた最も近いものは のようなものを使用していましたが、文字列用であることはsscanf(argv[2],"%i/%i",n1,d1);
わかっsscanf
ています...そして明らかにそれはできませんscanf()