タグ

ブックマーク / wisdom.sakura.ne.jp (3)

  • バイトオーダー

    ネットワークと私 ネットワークアプリケーションの建築を考えた時、全ての開発者がぶつかる問題があります それは、ネットワーク上にはどのようなコンピュータが存在するかわからないということです しかし、サーバーは相手が誰であれ正しい結果を出さなければなりません 人種差別が悪であるように、機種差別もネットワークの世界では悪なのです そこで、最初に問題となったのがネットワークバイトオーダーです ワード単位の情報をビッグエンディアンとするかリトルエンディアンとするか ネットワーク上の標準はどちらであるかという問題です 現代、多くのパーソナルコンピュータ市場は Intel とその互換プロセッサに支配され その性質は、下位バイトから順にメモリに配置するリトルエンディアン形式です アセンブリ経験者は理解していると思いますが、Intel の x86 プロセッサは 0xABCD というワード長のデータを 0xC

  • C言語入門 - WisdomSoft

    ここで紹介されるプログラムは Windows98SE VC++6.0、またはBorland C++ Compiler 5.5を使って動作実験されています それ以外の環境では、一部正常に動作しない可能性があります

  • #と##演算子

    文字列化演算子 マクロ関数だけで使用できる、便利な演算子が用意されています そのひとつが文字列化演算子です マクロ関数で受け取った値に対して#記号をつけることで それを文字列、すなわちダブルクォーテーションをつけた状態に置換えます (プリプロセッサディレクティブであることを忘れないでください。あくまでソース上で置き換わるだけです) #define STRING(str) #str このマクロ関数は、仮引数の値をダブルクォーテーションをつけた状態に置き換えます 次のプログラムを実行してください #include <stdio.h> #define PRINT(str) printf(#str "\n") #define STRING(str) #str int main() { PRINT(Kitty on your lap); printf("%sバイトは1キロバイト" , STRING(

  • 1