12の仕様(4)改
以前にもちょろっと予告しましたが、12の仕様解説(4) - プログラミング図形「12」]の演算子まわりの仕様をちょっと変えます。
(電卓機能実装は難しい上に微妙にわかりにくかったので)
早い話が予約語命令文同様、TBが変形する形にします。
具体的にはこんな感じ。
右耳の一覧から選ぶと、演算子そのものの形に変形するみたいな。
でもって、実際に演算子を組み込むのはこんな感じ。
これで
[変数1]=[変数2]+[変数3]を実現します。
無印のオレンジTBが、数式で言うところのカッコの役割を兼ねるわけです。
可読性は若干犠牲になりますが、実装面でも分かりやすさでもこっちのほうがいいかなーと。
問題は予約語命令文にも言えることだけど、この数だけ図形作って反映さすとかひたすら面倒なんですが・・・
Cソース書き込みプロトタイプ
ここから
こう選ぶと
こうなります
まだメインへのアンカーにしか対応してないし、変数定数の辺りをいじらないといけませんが
まずは、やりたいことの足がかりは出来た感じ。
うん、間に合わないねコレは
あと2日で仕上げるとか無理ゲーでしょ。
明日明後日仕事休んで・・・も多分間に合わない。
せめてCソースが表示できるようにして、それをコンパイルして実行・・・みたいなのが出来るようになったらいいんだけど。
よ・・・ようやく
どうにかこうにか保存と読み込みに成功しました、が。
char配列なんか大嫌いだっ!
ポインタいじったり色々やったけど、結局一番ベタな方法で処理したよ。
後なに?%sだとカンマまで読み込むから%[^,]にしないといけないって・・・わかるか、んなもん!
いやー、Cの素人が随分と手こずりました。
ベータ版公開の時にはソースも公開するので、初心者の苦肉の策をどうぞ笑ってください。
で大幅に予定が狂ったんだが、しかしどうしたものか。
ひとつ考えているのは、コンソール入出力を「捨て」て、代わりに演算結果をテキストファイルに落とすという方法を考えてます。じゃないと多分間に合わない。
あとC化してコンパイル・・・というのも時間的に間に合うかなぁ。Cソース表示だけでも作りたいんだけど。
そっちは後回しにして、とにかく実装部分を増やすことに専念したほうがいいかもしんない。
難航してる箇所>文字読み込み(追記)
ifstream とgetlineとsscanfと、あと%sの組み合わせでエラーが出るのは判明した。
試しに文字処理をしないソース組んだら動いたので。
ぐぐったけど対処がわからん・・・
sscanf使わないカンマデータ処理を別で組んだほうがいいのかなぁ。
で考えた対処方法が2つ。
1.sscanfを諦めてstrtokとかを使う
2.文字だけ別行にする
ソース直さなくて済むのは2なんですが、b12コードがめっさ汚くなる。いっそ
3.CSVでない、なんか他のデータの書き方を模索する
って方法考えますかねぇ・・・って思い浮かんだら苦労ないんですが。
保存問題ようやく解決。
結局プログラム直下のフォルダにb12.csvというファイルで保存することにしました。当然、元々あったデータは上書きされます。
暫定的に仕様はコレでいきます。βまでに修正する暇があるといいんだけど。
今度は保存したファイルの読み込みをば。これがまた難航しそうですわ・・・