K.Maebashi's BBS

ご自由に書き込んでください。雑談も可。
テスト書き込みの類はテスト用掲示板にどうぞ

[日付順表示] [日付順インデックス] [スレッド順インデックス]

新規投稿 | 開設者ホームページへ戻る | ヘルプ

[1018] Re:体当たり学習について質問
投稿者:(ぱ)こと管理人
2007/08/16 22:04:45

ちょいちさん、はじめまして。 >fgets(buf, 1024, stdin) >と書いていたのを、なぜ急に >fget(buf, 1024, fp) >と変えたのですか?? もちろんこれはトルさんから回答があったように入力元を変えるためなのですが、 「なぜこのプログラムから?」というのが疑問であるわけですよね。 確かに説明不足だったかもしれません。 理由は、ここで作っている関数input_string()は、汎用の関数を目指している ためです。 このinput_string()は、扱える行の最大長に制限があるとはいえおおむね現実的な 入力においては、長さチェックを行って長すぎる場合にはエラーまで出してくれる、 という便利な関数です。実際、蔵書管理プログラムの中でもあちこちで使われて いますし、今後別のプログラムで使うこともあるかもしれません。 今後別のプログラムで使うことがあるのなら、入力元をstdinに限定して しまったのでは汎用性が薄れます。そこで、input_string()に引数として 入力元を渡せるようにしているわけです。 これで回答になっていますでしょうか?
[この投稿を含むスレッドを表示] [この投稿を削除]
[1017] Re:体当たり学習について質問
投稿者:トル
2007/08/16 13:24:20

はじめまして。私は『C言語 体当たり学習徹底入門』はもってないんですが・・・ちょっとだけ。 fgetsの第三引数の型はFILE *で、入力先を指定します。 stdinは標準入力と結びついていますので、stdinを渡せば標準入力から入力します。 fpの方は、どこぞのファイルに結びついていますので、fpを渡せばそのファイルから入力します。 要するに、stdinをfpに変えたのは、読み込み先を変えたという事です。
[この投稿を含むスレッドを表示] [この投稿を削除]
[1016] Re:体当たり学習について質問
投稿者:ちょいち
2007/08/16 02:56:05

すいません。 自分の文章が自分でも理解できなかったので 何が分からないかを言い直しますw えぇと、「FILE *fpを引数に渡しているのはなぜか」というよりも、 fgets(buf, 1024, stdin) と書いていたのを、なぜ急に fget(buf, 1024, fp) と変えたのですか?? ってことがわからないってことです・・・。 すんません。
[この投稿を含むスレッドを表示] [この投稿を削除]
[1015] 体当たり学習について質問
投稿者:ちょいち
2007/08/16 02:47:02

はじめまして。ちょいちというC言語初心者です。 C言語体当たり学習徹底入門で勉強しています。 お世話になってます。 で、早速質問を・・・。 既出でしたら大変申し訳ないのですが、 p225のlist5-6やp227のlist5-8において、関数の引数に 『FILE *fp』があるのはなぜですか? よろしくお願いします。
[この投稿を含むスレッドを表示] [この投稿を削除]
[1014] 管理者により削除されました
2007/08/11 13:56:30

広告なので削除しました。
[この投稿を含むスレッドを表示]
[1013] 管理者により削除されました
2007/08/08 01:27:43

意味不明の投稿なので削除しました。
[この投稿を含むスレッドを表示]
[1012] 管理者により削除されました
2007/08/03 19:59:13

広告なので削除しました。
[この投稿を含むスレッドを表示]
[1011] Re:前橋和弥さんへの謝罪
投稿者:(ぱ)こと管理人
2007/08/03 03:26:31

>お父さんには今夜じゅうにでも謝っておこうかと思います。 それはよかった… ですが。 >後、気になることがあるのですが、以前、掲示板を覗かせてもらったときに、 >前橋さんが僕に対して「前言撤回。こういう馬鹿は一度死ななきゃわからないのかも >しれない。」とおっしゃっていたのを記憶しております。 a) まず、私はそのような発言をした覚えはありません。念のため「前言撤回」や  「馬鹿」でkmaebashi.comをGoogleサイト内検索してみましたがみつかりません。 b) それ以前の問題として、そもそも吉田さんは、この掲示板に書き込んだのは  2007年8月1日の[1008]が最初ではないのですか? 「初めまして」と書いてあるし。  ほんの1~2日前にこの掲示板に登場した人に、過去罵声を浴びせることが  できるはずがありません。 c) 仮に、吉田さんがかつては別のハンドルネームでうちの掲示板に書き込んでいて  私から何らかの罵声を浴びせられたとして、だったらその過去のハンドルネームなりを  教えてもらわなければ、私には、何の話だかわかるはずもありません。  >これは何に対する憤怒なのでしょうか。 >僕はずっとbrainfuckインタプリタを自分の物として父親に発表されたことによる >憤怒かと思っておりました。 d) 「brainfuckインタプリタを自分の物として父親に発表された」ということを  吉田さんがこの掲示板に報告したのは、これもつい1~2日前の[1008]の投稿です。  吉田さんがお父さんに何を発表しようと、その内容を私が知ることは不可能です。  よって、それによって私が憤怒するなどということがあるはずもありません。 a)だけなら、別の掲示板と勘違いしてたとか、前橋の方が過去に罵声を浴びせた ことを忘れてる、ということもあり得るでしょうが、b), c), d)は、そういうことでは 説明がつきません。 煽りでもなんでもなく思うのですが、吉田さん、統合失調かなにかのケがありませんか。 もちろん私のような素人が勝手に診断を下してよいはずはないわけで、だからこそ、 (現在未受診であれば)精神科の診察を受けられたほうがよいのではないでしょうか。
[この投稿を含むスレッドを表示] [この投稿を削除]
[1010] Re:前橋和弥さんへの謝罪
投稿者:吉田祥彰(本名)
2007/08/02 11:50:03

前橋さん、ご返信ありがとうございます。 brainfuckインタプリタの件に関して前橋さんが「問題ない」とおっしゃってくれてホッとしております(NYSLの簡単な概要に関しては理解しました)。 お父さんには今夜じゅうにでも謝っておこうかと思います。 後、気になることがあるのですが、以前、掲示板を覗かせてもらったときに、前橋さんが僕に対して「前言撤回。こういう馬鹿は一度死ななきゃわからないのかもしれない。」とおっしゃっていたのを記憶しております。これは何に対する憤怒なのでしょうか。僕はずっとbrainfuckインタプリタを自分の物として父親に発表されたことによる憤怒かと思っておりました。もし、違う理由があるのであれば、その理由を教えていただけないでしょうか。よろしくお願いいたします。
[この投稿を含むスレッドを表示] [この投稿を削除]
[1009] Re:前橋和弥さんへの謝罪
投稿者:(ぱ)こと管理人
2007/08/01 23:16:32

>僕が前橋和弥さんの作った宝であるbrainfuckインタプリタをさも自分が >作ったかのように自分の父親に発表してしまったことです。これは >ソースファイルの盗用にあたるかと思います。 Brainfuck自体は、私が考えた言語ではないですし、実装もそこかしこに 転がっていますがそれはさておき。 BF-BASIC'nのソースについて言えば、ライセンスはNYSLであり、これは http://www.kmonos.net/nysl/ | ご自分の作ったものを扱うのと同じように、自由に利用することが出来ます。 と明記してあるとおり、BF-BASIC'nのソースを「さも自分が作ったかのように」 扱うことはまったく問題がありません。 よって、私からすればまったく問題ないわけですが、吉田さんが謝罪すべき 相手はお父様の方ではないでしょうか。嘘をついたわけですから。
[この投稿を含むスレッドを表示] [この投稿を削除]
[1008] 前橋和弥さんへの謝罪
投稿者:吉田祥彰(本名)
2007/08/01 11:53:44

初めまして。吉田祥彰という者です。今回は前橋和弥さんへ謝罪いたしたく投稿させていただきました。謝りたい件というのは、僕が前橋和弥さんの作った宝であるbrainfuckインタプリタをさも自分が作ったかのように自分の父親に発表してしまったことです。これはソースファイルの盗用にあたるかと思います。ここで前橋さんにお願いがあります。どうか前橋さんの寛大な心で、僕の愚行を許していただけないでしょうか?今後、このようなことはしないように最大限の注意を払って努力していくつもりです。どうかよろしくお願いいたします。
[この投稿を含むスレッドを表示] [この投稿を削除]
[1007] Re:すぽぽーーん
投稿者:(ぱ)こと管理人
2007/07/29 01:32:04

>BF-BASIC…前フリで「逆にいま BASIC 回帰もありなんだな」とか妙に納得しちゃったんですがすぽぽーんでコーヒー吹きました どうもです。ウケたようで何よりです。 いまさらですが、BF-BASIC'nは日付を見ればわかるように2006年のエイプリルフールに書いたものです。 ところで、前フリ部分は、私にとってはあれはあれで一面の本音ではあります(ぼそっ)。
[この投稿を含むスレッドを表示] [この投稿を削除]
[1006] すぽぽーーん
投稿者:通りすがったり
2007/07/28 14:30:08

BF-BASIC…前フリで「逆にいま BASIC 回帰もありなんだな」とか妙に納得しちゃったんですがすぽぽーんでコーヒー吹きましたBF で気づくべきだったのだな
[この投稿を含むスレッドを表示] [この投稿を削除]
[1005] Re:Python 関数電卓
投稿者:nao
2007/07/23 23:49:52

>>コードが美しく、短く、分かりやすいです。 > >うーん、ざっと見ただけですが、なんか効率悪いパーサのような… > 許容範囲のコードかなぁー
[この投稿を含むスレッドを表示] [この投稿を削除]
[1004] Re:Python 関数電卓
投稿者:(ぱ)こと管理人
2007/07/22 14:51:44

>つんつんが時々 訪れている「紫藤さんのページ」のPython関数電卓です。 >http://www.shido.info/py/python_calc.html 情報ありがとうございます。 「Perl, Python, Rubyの比較」 http://www.shido.info/py/python1.html は以前に読んだことがあるのですが、その方のページだったんですね。 >コードが美しく、短く、分かりやすいです。 うーん、ざっと見ただけですが、なんか効率悪いパーサのような…
[この投稿を含むスレッドを表示] [この投稿を削除]
[1003] Python 関数電卓
投稿者:つんつん
2007/07/21 08:08:11

つんつんが時々 訪れている「紫藤さんのページ」のPython関数電卓です。 http://www.shido.info/py/python_calc.html コードが美しく、短く、分かりやすいです。 (つんつんの関数電卓は、引退しました。) 「紫藤さんのページ」には、scheme の関数電卓もあります。 http://www.shido.info/lisp/scheme_calc.html
[この投稿を含むスレッドを表示] [この投稿を削除]
[1002] 管理者により削除されました
2007/07/21 01:14:25

意味不明の投稿なので削除しました。 テスト投稿であればテスト用掲示板にお願いします。
[この投稿を含むスレッドを表示]
[1001] Re:「プログラミング言語を作る」が面白い
投稿者:(ぱ)こと管理人
2007/07/19 00:42:24

>>あ、それすごく面白そうです。何度か書いてますが、私自身車輪の再発明が趣味ですし。 > >私も全く同様なのですが、どうも肩身が狭いですね。 >サイトが稼動し始めたらお知らせします。 や、よろしくお願いします。 エディタとかメーラとか、普段使っているツールは、プログラマにとってもっとも自作 したくなる道具であるはずで、だったらプログラミング言語は最優先のはずではないか、 とも思うのですが。 前提からして間違っているのかなあ… # かくいう私自身、クライアントアプリとしてのメーラを書いたことはないですが # (Webメーラなら書いたことある) >解説とか研修を行なうときは「無駄を省いた自作コース」を提供するのが強力であることが多いと思います。 その意味で、以前書いたように「本当の基礎からのWebアプリケーション入門―― Webサーバを作ってみよう」というのを考えてはいるのですが、Diksamができるまでは お預けです。ていうか私自身読みたいネタなので、誰か書いてくれないかしらん。
[この投稿を含むスレッドを表示] [この投稿を削除]
[1000] Re:「プログラミング言語を作る」が面白い
投稿者:yuya
2007/07/18 12:34:35

>>「車輪の再発明工場(仮称)」なんていうサイトを立ち上げようとしている私としては、 > >あ、それすごく面白そうです。何度か書いてますが、私自身車輪の再発明が趣味ですし。 私も全く同様なのですが、どうも肩身が狭いですね。 サイトが稼動し始めたらお知らせします。 > 言語処理系だけでなく、普段使っている何かを自作するというのは、それを理解する > 一番の方法でもありますし(時間はかかるので効率は悪いですが…)。 そうですよね。何にもない状態から発明した人よりははるかに短時間で作れるわけですから、 解説とか研修を行なうときは「無駄を省いた自作コース」を提供するのが強力であることが多いと思います。 # 「何でも自作してみないと本当に分かった気がしないのは、損なのか得なのか??」と悩んじゃうことはありますが(^^;)
[この投稿を含むスレッドを表示] [この投稿を削除]
[998] Re:「プログラミング言語を作る」が面白い
投稿者:(ぱ)こと管理人
2007/07/15 04:17:07

>「車輪の再発明工場(仮称)」なんていうサイトを立ち上げようとしている私としては、 あ、それすごく面白そうです。何度か書いてますが、私自身車輪の再発明が趣味ですし。 言語処理系だけでなく、普段使っている何かを自作するというのは、それを理解する 一番の方法でもありますし(時間はかかるので効率は悪いですが…)。 >素朴な疑問なんですが、(ぱ)さん自身はCrowbarやDiksamを普段どれくらい使われているのでしょうか? これはもう正直なところを言ってしまうと、ほぼまったく使っていません。 Diksamなんか現状でprint()しか組み込み関数がないので実用になりませんし、 crowbarならAWK程度の役には立ちそうですが、そもそもAWKとかPerlとかRubyとかの 言語でさくっとテキスト処理、という機会も、今の私にはあまりないですし。
[この投稿を含むスレッドを表示] [この投稿を削除]
[997] Re:「プログラミング言語を作る」が面白い
投稿者:yuya
2007/07/14 00:38:53

久々にお邪魔します。 >まあ、あの文章が面白いのだとすればそれは別に私の手柄ではなく、 >「プログラミング言語を作る」という行為自体が非常に面白いためなんだろうと >思いますが。 ># でも、同意してくれる人はあまり多くない気がします。残念ながら。 「(ぱ)さんの手柄ではない」という点は同意しませんが、 「言語を作るという行為自体が面白い」という点は同意します(そんなに少数なんですかね?)。 「車輪の再発明工場(仮称)」なんていうサイトを立ち上げようとしている私としては、 「面白そうだからやってみる。それだけ」というノリに共感を覚えてしまうんですが(^^;) 素朴な疑問なんですが、(ぱ)さん自身はCrowbarやDiksamを普段どれくらい使われているのでしょうか?
[この投稿を含むスレッドを表示] [この投稿を削除]
[996] 管理者により削除されました
2007/07/14 07:55:43

広告なので削除しました
[この投稿を含むスレッドを表示]
[994] Re:「プログラミング言語を作る」が面白い
投稿者:(ぱ)こと管理人
2007/07/13 00:54:52

はじめまして。おほめいただきありがとうございます。 まあ、あの文章が面白いのだとすればそれは別に私の手柄ではなく、 「プログラミング言語を作る」という行為自体が非常に面白いためなんだろうと 思いますが。 # でも、同意してくれる人はあまり多くない気がします。残念ながら。 >「プログラミング言語を作る」を体裁を整えて本にしてください。 >5000円未満なら買います。 えー、どうなるかはわかりませんが、精進いたします。
[この投稿を含むスレッドを表示] [この投稿を削除]
[993] Re:bc より高機能な関数電卓
投稿者:(ぱ)こと管理人
2007/07/13 00:53:00

>あれ、Cにはありますよ。少なくともC89では既にありました。 ありゃ、本当だ。Cの構文規則は何度も見ているしパーサを書いたことも複数回あるし、 知らなかったはずはないのですがなぜか「ない」と思い込んでいたようです。 >Java は知りません。:) ありました。 http://java.sun.com/docs/books/jls/third_edition/html/expressions.html#15.15.3 毎度のことながらご指摘ありがとうございます。 嘘を書きましてすみませんでした。
[この投稿を含むスレッドを表示] [この投稿を削除]
[992] 「プログラミング言語を作る」が面白い
投稿者:なぞ
2007/07/12 18:49:18

「プログラミング言語を作る」を体裁を整えて本にしてください。 5000円未満なら買います。
[この投稿を含むスレッドを表示] [この投稿を削除]
[991] Re:bc より高機能な関数電卓
投稿者:kit
2007/07/11 22:58:34

> CでもJavaでも単項の+演算子は用意されていませんよね あれ、Cにはありますよ。少なくともC89では既にありました。 Java は知りません。:)
[この投稿を含むスレッドを表示] [この投稿を削除]
[990] Re:bc より高機能な関数電卓
投稿者:(ぱ)こと管理人@自宅環境復活
2007/07/11 02:15:46

 再投稿ありがとうございます。  電卓の大親分であるはずのPCが目の前にあるのに電卓叩いてたり、あろうことか電卓内蔵のマウスパッドなんかが普通に商品の1ジャンルを占めていたりする現状を見るにつけ、こういう(bcのような)電卓には価値があると思います。  私はすぐにyaccを使ってしまいますが、つんつんさんのは手書きの再帰下降パーサですね。RubyならRaccという手もあるかと思いますが。 >bc では、+1+1+1 がエラーで、-1-1-1 が成功します。 >動作が変です。  これは実際そのとおりだと思いますが、CでもJavaでも(ついでに言うとcrowbarでもDiksamでも)単項の+演算子は用意されていませんよね(Rubyにはあるようですが)。  単項+演算子を付けるのは容易なはずなのに付けてないのは、crowbarやDiksamについて言えば単にCをまねたからなのですが、冗長な表現を嫌ったという理由もあるのかもしれません。
[この投稿を含むスレッドを表示] [この投稿を削除]
[989] bc より高機能な関数電卓
投稿者:つんつん
2007/07/10 23:25:19

bc では、+1+1+1 がエラーで、-1-1-1 が成功します。 動作が変です。 ruby スクリプト:正規表現が厳密に合っていないのですが 電卓として機能します。 'q' で終了です。 試してください。   http://www.otc.ne.jp/~mugenkai/keisan.rb tntn@otc.ne.jp
[この投稿を含むスレッドを表示] [この投稿を削除]
[988] 管理者により削除されました
2007/07/10 23:11:58

ここにあった投稿は広告なので削除するんですけど、 この投稿の前に、Rubyで作った電卓プログラムを投稿された方が いらっしゃったはずなんですが… 削除しちゃったのかなあ。残念です。
[この投稿を含むスレッドを表示]
[985] Re:関数の型の宣言構文について
投稿者:みずしま
2007/06/27 15:15:02

>ASTや中間表現は共通で、コード複製はコード生成部で行うことになるのだと >思いますけれども、それをいつやるか、という問題がありますよね。 >Javaのような実行形態を考えると、Listクラスはきっと事前にコンパイルされて >いるはずですし、List<int>を使うクラスがあっちにもこっちにもあるとすると、 >コンパイルの時点で複製すると悲惨なことに。 分割コンパイルを行うときの問題ですか。基本型を対象とするなら個数が あらかじめ決まっているので、Listクラスのコンパイル時に List_int.class, List_long.class, ... を生成しておけば済みそうですが、実体型をユーザが宣言できる言語だと、 同じ手は使えないわけで、考えどころですね。
[この投稿を含むスレッドを表示] [この投稿を削除]