No Such Blog or Diary
C言語のクイズ
適当なXを持ってきて以下の二つの文が等価でないことを示せ:
X += e; X = X + e;
まあ,副作用のある関数 f の呼び出しを X に上手く入れられれば等価でないことを言えるのだけど,単純に X を f() にしただけでは左辺値じゃないと怒られる.何かでくるんで左辺値にすればオッケー.
f()を含んだ左辺値になる式は色々あるけれど,例えば配列へのアクセス a[f()] なんてのはその候補.さて,では,そのような式の中で最小のものは何なんだろうか? ゴルフする人間としては気になる.
で,さっき思いついたけど,ポインタを返す副作用のある関数 f を持ってきて X に *f() を入れれば以下の二つの文は等価じゃない.
*f() += e; *f() = *f() + e;
これが最小の解なのだろうか?
- Comments: 0
- TrackBack (Close): -
注意せず書いた部分にはやはり間違いが多い
- 2010-12-06 (Mon)
- 一般
Theorem の結果に基づく corollary を書いたらそのステートメント内の式を書き間違えてた.そして証明も適当にすっ飛ばしてたので,これおかしくねーかと指摘されるまで気づかんかった.テスト実装も広いクラスを扱うTheoremに基づいて作ってたし.
ということで,自明な結果ほど注意深くなっておかないと書き間違いが増えるなぁと.気をつけよう.
- Comments: 0
- TrackBack (Close): -
電気ガス水道
- 2010-12-05 (Sun)
- 一般
それぞれ開始の申し込み.電気と水道は口座振替の申込用紙を送るだけ.ガスだけ立会が必要なので少々面倒.とはいえ申し込んでから2日で来てくれる(普通は1週間前に申し込めと書いてあるけど)のであまり困らないけれど.
そしていらないものを更に処分.だいぶすっきり.
- Comments: 0
- TrackBack (Close): -
色々手続き中
- 2010-12-04 (Sat)
- 一般
準備が整ったので賃貸契約してきた.書類に直筆で住所と氏名と何度も書くのはめんどい.どうせ判子押すんだから直筆である必然性が無い気がするのだけどどうなのだろうか?
そしてやはり担当の人は信用ならない,というか仕事適当過ぎ? まず,契約のための時間予約をしておいたのだが,その時間を間違って記憶していた.おかげでアホなやり取りを最初に行うことになった.あと,認印と届け印が必要だというのは常識的に考えてあたりまえだが,それでも必要だから持って来いと事前に伝えるべきだろう.持って行かなかったらどうなっていただろうか? そして,鍵のシリンダ交換をお願いしようとしたら「複製できない鍵だから必要ない」と言われたのだが,他の人はスペアを作っておけと言う.結局のところ自分で全部調べないと危ない.他にも,契約のための個々の事象に対しては最短日数を教えてくれるが,全体の流れ(依存関係)の説明がなく,全体としての最短がどこなのかを把握して色々調整するのが困難だった.普通は全体の説明を正確にしてくれるもんじゃないのけ?
閑話休題.
とりあえず NTT のお引越しを最優先で実行.アナログ電話回線と光回線をお引越しということで,http://web116.jp/ からお引越し手続きをした.光回線のお引越しを伴う場合には,最後のコメント欄で「フレッツも一緒に移転する」と書いておけばいいらしい(プロバイダの継続利用も書いておくべきか?).あとで電話がかかって来るので,申し込んだ内容の確認と細かいことの確認(プロバイダの継続とか)と工事日の決定をして終了.
次いで引越し屋さんにお引越しの確定の電話.先週の時点で見積もりもらっていたので,きほんそのまま.ダンボール箱をお急ぎで送ってもらう.
- Comments: 0
- TrackBack (Close): -
雨~
- 2010-12-03 (Fri)
- 一般
お出かけしなけれええばならないときに限って雨.めんどい.
と思ったら出かけるときには雨が上がった.めでたい.
とりあえずやること3つのうち1つは片した.例の確認のためにも実装がほしい…
- Comments: 0
- TrackBack (Close): -