ブログ

仕事がなくてブラブラしているぐらいなら、相談に来ればよいのに...

弊社は積極的に求人広告は出していませんし、今回も求人を目的とした記事ではないことをあらかじめお断りしておきます。

その上でなのですが、「仕事がなくてブラブラしているぐらいなら、相談に来ればよいのに...」と、日ごろからよく思います。会社のブログでこんなことを書くのは、ある意味とんでもなく無責任な発言なのかもしれません。それでも書かずにおれないのです。

[C99] 第11回 その他、細部のちがい

ここでは、他の回で採り上げなかったC++とC言語の細かなちがいについて解説します。

可変個の実引数を取る関数の仮引数並び

C++では、printf 関数のような可変個の実引数を受け取る関数の仮引数並びを次のように記述することができました。

int printf(const char* format ...);  /* エラー */

しかし、C言語では、必ず ... の前にコンマを記述する必要があります。

珍しくまともな情報商材を見つけました

「情報商材」というと、全部詐欺だと思っている人は今回の話はスルーしてください。

私は実験主義を重んじています。世の中にはいろいろ怪しいことというのは確かに多いのですが、憶測だけで決めつけることはしないように努めています。ですので、明らかにダメなものは除き、なるべく自分で試してみることにしています。

Z80なんて本当に久しぶりに見た

昔なら(少なくとも名前ぐらいは)知らない人はいないであろうZ80ですが、今ではほとんど使われていないように思います。少なくとも新規開発ではまったく見かけません(私が知らないだけ?)。

そういう見方もあるのか...

先日、拙著『C/C++プログラミングの「迷信」と「誤解」』にアマゾンで最初のレビューが付きました。ネット書店や個人のブログなどに掲載されたレビューに対して、当サイトで反応することはあまりしないのですが、今回は例外的に言及することにします。

[象の卵] new[ ] で確保した配列の要素数を取得する方法?

これを実現するには、operator new[]とoperator delete[]を定義しなおす必要があります。以下に具体例を示します。

[象の卵] 構造体/共用体のエンディアン?

この命題に取り組む前に、エンディアンの定義について確認しておくことにします。通常は、バイトオーダー、すなわちバイト単位での配置方式または配置順序のことですが、ここではnoocyteさんによる下記の定義を踏襲することにしましょう。

複数の要素 (普通はバイトまたはビット) からなるデータを表現するのに, 要素を並べる順序に自由度がある場合, 順序の選択肢の一つ一つがエンディアンである.

[象の卵] 構造体のメンバ数の取得方法?

Cの構造体のメンバ数を取得したいという要望があるようです。Cの構造体は、あくまでもコンパイル時だけの概念であり、実行時には情報が失われてしまいます。ですので、実行時にメンバ数やメンバの型、あるいはメンバ名を取得することはできません。どうしてもやりたければ、構造体とは別に自分で情報を管理するしかありません。ここまではnoocyteさんも指摘されています。

象の卵を探して...

久々にnoocyteさんのサイトにヒントを得た記事を書くことにします。今回の元ネタは象の卵です。ずいぶん前のコンテンツですが、まあ、気にせずにいきましょう。

次回作の予定

早いもので、『C/C++プログラミングの「迷信」と「誤解」』の発売から1ヶ月が経過しました。この時期になると、当然、次回作に取り掛かっていてしかるべきなのですが、いつもながらのスロースターターでして、まだ何一つ手を付けていないのが現状です。脱稿の目標はとりあえず9月末に設定してみたものの、このままではどうなるか怪しいというのが正直なところです。

コンテンツ配信