タグ

関連タグで絞り込む (0)

  • 関連タグはありません

タグの絞り込みを解除

programmingとProgrammingとcに関するsiroccoのブックマーク (4)

  • 増井雄一郎(@masuidrive)さんの「数十時間悩んだあげく1行で直るコード」問題解説記事 #c #mruby|CodeIQ MAGAZINE

    増井雄一郎(@masuidrive)さんの「数十時間悩んだあげく1行で直るコード」問題解説記事 #c #mruby 2013.12.12 Category:CodeIQ問題解説・リーダーボード Tag:C ,masuidrive ,mruby ,Ruby 増井雄一郎さんから初の問題!「数十時間悩んだあげく1行で直るコード」の解説記事です。 この問題は、実際に増井雄一郎さんとまつもとゆきひろさんのお二人が数十時間悩んだ結果解決した経験が元になっています。 あなたはこの問題解けましたか? by CodeIQ運営事務局 増井雄一郎です。 初のCodeIQへの出題でかなり緊張しましたが、想定より多くの方に答えていただき、驚きと喜びで一杯です。 出題後、問題文に”1行”と書いたことで混乱させてしまったかもしれないと不安になりましたが、解答を見ているとあまり問題ではなかったようで安心しました。 問題文

    増井雄一郎(@masuidrive)さんの「数十時間悩んだあげく1行で直るコード」問題解説記事 #c #mruby|CodeIQ MAGAZINE
    sirocco
    sirocco 2013/12/13
    C言語怖い・・・Orz
  • ファイルディスクリプタについて(5) ~多重I/O「Multiplex I/O」の種類の特徴、使い方

    はじめに 前回は、プログラムの内外部から発行されたシグナルイベントを補足し、通知するためのシグナル用ディスクリプタ「signalfd」について解説しました。今回は、複数のファイルディスクリプタを一元管理する「多重I/O」機能について解説してきます。 連載概要 第1回:ディスクリプタの概要 第2回:イベント用ディスクリプタ「eventfd」の特徴 第3回:タイマー用ディスクリプタ「timerfd」の特徴 第4回:シグナル用ディスクリプタ「signalfd」の特徴 第5回:多重I/O「Multiplex I/O」の種類の特徴、使い方 第6回:多重I/Oの性能とC10K問題 第7回:シグナル駆動I/Oの特徴、使い方 第8回:非同期I/O「Asynchronous I/O」の使い方と性能差 第9回:ファイルディスクリプタパッシングの特徴、使い方 サンプルプログラムは100行前後程度までは画面に記載

    ファイルディスクリプタについて(5) ~多重I/O「Multiplex I/O」の種類の特徴、使い方
  • 404 Blog Not Found:Cで強引にたらいを後回し

    2007年05月22日22:00 カテゴリLightweight Languages Cで強引にたらいを後回し 404 Blog Not Found:λ萌え - たらいを後回しを書いた後、なんとかCでも出来ないかと、車輪の再発明する代わりに横車を押してみた。 GCCにはclosureがある! 実は以外と知られていないが、gccでは無名関数は使えなくとも、closureは使える。最近では無名関数をサポートしている言語が人気ということもあり、また無名関数の多くがclosureとしても用いられているため、無名関数の別名としてclosureという呼び方をすることもあるが(私もときどきやる)。この二つは来は別物である。JavaScriptで書くと、 var outer = 1; var closure = function(x){ return outer++ }; var nonclosure

    404 Blog Not Found:Cで強引にたらいを後回し
  • いやなブログ: Cのポインタを整数に変換する

    Cのポインタを整数に変換する Cのポインタを整数に変換したいときがあります。このとき問題になるのは、ポインタのサイズが int と同じとは限らないということです。たとえば、 x86_64 の 64ビットのバイナリでは sizeof(int) = 4, sizeof(void *) = 8 となります。ポインタと同じサイズの整数を使いたい場合は C99 で導入された stdint.h で提供される intptr_t または uintptr_t を使います。 stdint.h には他にも int32_t や int64_t など、サイズつきの整数の型も提供されています。たとえば、uint64_t を使うと、64ビットの符合なし整数を扱うことができます。 私の場合、C++ のプログラムで void * から直接 uint64_t にキャストしようとしてはまりました。次のプログラムを x86_32

  • 1