タグ

cに関するxmx3のブックマーク (20)

  • JPCERT C Secure Coding Standard 日本語版 - プリプロセッサ (PRE) (#c01)

    CERTコーディングスタンダードの利用条件/著作権・免責事項 00. はじめに 01. プリプロセッサ (PRE) 02. 宣言と初期化 (DCL) 03. 式 (EXP) 04. 整数 (INT) 05. 浮動小数点 (FLP) 06. 配列 (ARR) 07. 文字と文字列 (STR) 08. メモリ管理 (MEM) 09. 入出力 (FIO) 10. 環境 (ENV) 11. シグナル (SIG) 12. エラー処理 (ERR) 13. Application Programming Interface (API) 14. 並行性 (CON) 49. 雑則 (MSC) 50. POSIX (POS) AA. 参考情報 BB. Definitions CC. 未定義の動作 DD. 未規定の動作 XX. お問い合わせ Top へ 00はじめに このページでは、JPCERTコーディネーショ

    JPCERT C Secure Coding Standard 日本語版 - プリプロセッサ (PRE) (#c01)
    xmx3
    xmx3 2011/10/22
  • Xorshift - Wikipedia

    Xorshiftは疑似乱数列生成法の1つである。George Marsaglia(w:George Marsaglia)が2003年に提案した。演算が排他的論理和とビットシフトのみであるため高速である[1] などの特徴がある。 #include <stdint.h> struct xorshift32_state { uint32_t a; }; /* The state word must be initialized to non-zero */ uint32_t xorshift32(struct xorshift32_state *state) { /* Algorithm "xor" from p. 4 of Marsaglia, "Xorshift RNGs" */ uint32_t x = state->a; x ^= x << 13; x ^= x >> 17; x ^=

  • 三次方程式の解 - malibu-bulldogの日記

    今日はアルゴリズムのお話を。 FEMのポスト処理ソフトを作っていると三次方程式の解き方が必要な時が多々でてきます。 三次方程式の出現元は2階のテンソルの主値を求める処理。 例えば - 応力テンソルから最大主応力を求めたり - 剛体の慣性テンソル(らしきもの)からバウンディングボックスの各軸方向を求めたり。 バウンディングボックスについてはバウンディングボックス - malibu-bulldogの日記を。 さてさて2階のテンソルが出現元なので,三次方程式を解くことはようは行列の固有値を求める事と結果が同じになります。 行列の固有値を求めるのは 2008-06-15 - malibu-bulldogの日記 に書いたヤコビ法があります。 でも,ヤコビ法は反復法なんで直接法があればそっちの方が計算はやいかも…。 つまり直接テンソルの主値に関する三次方程式が解けるならそっちの方がいいかもしれないって

    三次方程式の解 - malibu-bulldogの日記
  • アルゴリズムの紹介

    ここでは、プログラムなどでよく使用されるアルゴリズムについて紹介したいと思います。 元々は、自分の頭の中を整理することを目的にこのコーナーを開設してみたのですが、最近は継続させることを目的に新しいネタを探すようになってきました。まだまだ面白いテーマがいろいろと残っているので、気力の続く限りは更新していきたいと思います。 今までに紹介したテーマに関しても、新しい内容や変更したい箇所などがたくさんあるため、新規テーマと同時進行で修正作業も行なっています。 アルゴリズムのコーナーで紹介してきたサンプル・プログラムをいくつか公開しています。「ライン・ルーチン」「円弧描画」「ペイント・ルーチン」「グラフィック・パターンの処理」「多角形の塗りつぶし」を一つにまとめた GraphicLibrary と、「確率・統計」より「一般化線形モデル」までを一つにまとめた Statistics を現在は用意していま

  • tokuhirom blog

    Blog Search when-present<#else>when-missing. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)?? ---- ---- FTL stack trace ("~" means nesting-related): - Failed at: ${entry.path} [in template "__entry.ftlh" at line 3, column 25] - Reached through: #include "__entry.ftlh" [in template "entry.ftlh" at

  • 突き進めればgotoは使わない機能になる - 神様なんて信じない僕らのために

    使ってはならないのは「goto」ではない go to文は 有害である みねこあさん経由。 自分なりの視点で書きます。 最近書いているプロジェクトは二十万行程度の規模ですが、 gotoは一度も出現しません。 しかし、 ifやfor、while、switch、returnなどは惜しみなく登場するし、 doも登場します。 なのになぜgotoは出現しないのでしょうか? (組み込んだライブラリの中には存在するけどね) それは、多分普通に使わないから。 小難しい事を無視して語るのならば「gotoを使わなければ綺麗に書けない」という状況がほぼ存在しないと考えます。 for の多重ネストから抜けたりエラー処理をするのには勿論使われるでしょうが、 せいぜいがその程度で、これらを綺麗に書くことはgotoを使わなくても可能。 で、自分が考えたのは、 非常に局所的で必要最小限のジャンプだけをgotoが行うとしたと

    突き進めればgotoは使わない機能になる - 神様なんて信じない僕らのために
    xmx3
    xmx3 2009/07/15
  • Account Suspended

    Account Suspended This Account Has Been Suspended

    xmx3
    xmx3 2009/07/15
  • go to文は 有害である - みねこあ

    goto」というのは、プログラム言語の機能としては、最も基的かつ単純なもののひとつです。これを使いこなせないようなプログラマは平均的といえるのでしょうか? 使ってはならないのは「goto」ではない | 株式会社きじねこ については、ダイクストラは 「go to文は有害である」中の、 The go to statement as it stands is just too primitive; it is too much an invitation to make a mess of one's program. go to文はムチャクチャ プリミティブに立脚しすぎてるから、プログラムを容易に混乱の渦へ誘ってしまう。 Go To Statement Considered Harmful と上手く対比になっていて面白いと思いました。 わたしの個人的スタンスとしてgo to文は、原則禁止、

    go to文は 有害である - みねこあ
    xmx3
    xmx3 2009/07/15
  • Ruby 拡張モジュール入門 / SlideShare

    2. おしながき おしながき 拡張モジュールとは なにもしない拡張モジュール hello.so 拡張モジュールを作る前に まとめ 2007-11-17 Ruby 勉強会@札幌 #6 1 4. 拡張モジュールって何? 拡張モジュールって何? 拡張モジュールとは・・・ Ruby では実現不可能だけど,C ⾔語なら実現可 能な事柄を,C ⾔語で実装して Ruby から使えるよ うにするための共有ライブラリ Ruby で実装すると遅いけど,C ⾔語なら実⽤的な 実⾏速度を実現できるようなアルゴリズムなどを,C ⾔語で実装して Ruby から使えるようにするための 共有ライブラリ アセンブリ⾔語も使えるよ\(^o^)/ 2007-11-17 Ruby 勉強会@札幌 #6 3 5. 拡張モジュールの例 拡張モジュールの例 標準添付 独⽴配布 Ruby/OpenSSL Ruby/GNOME2 Ruby/

    Ruby 拡張モジュール入門 / SlideShare
    xmx3
    xmx3 2009/07/07
  • 100行のCプログラムでWebチャットを実装する方法 - mixi engineer blog

    例の冷却ファンを修理してもらいに秋葉原に行ったのですが、最近の同人ゲームのクオリティはすごいなあと感心していたら、その二階はもっととんでもないことになってて、ひとつ大人になってしまったmikioです。今回は、Tokyo Cabinetのテンプレート直列化機能を駆使して、たった100行のCプログラムでWebチャットシステムを実装してみます。 古式ゆかしいWebチャットシステム 10年くらい前にCGIスクリプトでチャットシステムを作るのが流行していたのを覚えている方も多いと思います。チャットログは現在のようにデータベースサーバに転送して格納するのではなく、ローカルファイルシステム上のファイルにCSVやTSVなどのフォーマットで格納したり、同じくローカルのDBMファイルに格納するのが主流でした。2ちゃんねるの「datファイル」もそのようなデータファイルの一種と言えるでしょう。 その頃から、CGI

    100行のCプログラムでWebチャットを実装する方法 - mixi engineer blog
    xmx3
    xmx3 2009/06/18
  • いやなブログ - 文字列操作の比較表: Ruby, Python, JavaScript, P...

    文字列操作の比較表: Ruby, Python, JavaScript, Perl, C++ Ruby, Python, JavaScript, Perl, C++ の文字列操作の比較表を作りました。配列操作の比較表の続編です。間違いなどがあったらご指摘いただけると助かります。 Ruby (String) Python (str) JavaScript (String) Perl C++ (std::string)

  • 【ハウツー】Cアプリを高速化せよ! - 正式リリースされたgoogle-perftoolsを試す (1) google-perftoolsとは | エンタープライズ | マイコミジャーナル

    google-perftoolsはGoogleによって提供されている、C/C++アプリケーションのパフォーマンスを改善するための開発ツールキットである。2005年3月に初めて公開され、およそ4年を経て7日に正式版がリリースされた。The BSD Licenseの下で提供されており、LinuxをはじめとしてFreeBSD、Mac OS X、Solaris 10、Windows XPなど、各種プラットフォームでの動作が確認されている(ただし、Linux以外については一部機能を除く)。 google-perftoolsには次に挙げる4つのツールが含まれている。 高速メモリアロケータTCMalloc ヒープチェッカー ヒーププロファイラ CPUプロファイラ TCMalloc(Thread-Caching Malloc)は通常のmallocよりも高速なメモリ割り当てを実現するライブラリであり、テスト

  • Cはワンマン向け - 神様なんて信じない僕らのために

    だと考えるようになった。 いや、あくまで自分の中ではです。 今、Cで作られたものを参考にしてC++に移す作業をしていたりするんだけれども、 至る所に出現する、 void* コールバック 謎フラグ hoge->foo->bar->ptr ううーん。 これだけをして、ダメというのは何かもしれないけれど、 void*は至る所で何かに化ける。 根底にあるのは汎用ワークだからして、 その場その場で姿が変わる。 メモリマッピングとしてはそれが当然だからして当然なのだが、 型安全性とは真逆。 コールバック、 StateやStrategy風なことをしようとしてコールバックの嵐になるんだけれども、 あっちやそっちやこっちに飛んだりして遷移が読みづらい。 何でもかんでもコールバックで指定すりゃ良いってもんでもない。 謎フラグ、 至るところにあるhoge_flag & HOGE_FOO_BAR、 フラグの名前だ

    Cはワンマン向け - 神様なんて信じない僕らのために
    xmx3
    xmx3 2008/11/20
  • C言語を使ってRubyの拡張ライブラリを作ってみる - Watsonのメモ

    気の向くままにRubyを勉強しています。PerlにはC言語で書かれた関数を呼び出すためにXSという仕組みがありますが、Rubyはどうなんだろうかと調べてみると Ruby拡張ライブラリ に書かれていました。 作成する拡張ライブラリは以下の処理と同じものにしました。 class Hoge def add(x) return x + 1 end end 1. C言語でコーディング /* file name: sample_ext.c */ #include <ruby.h> VALUE add(VALUE self, VALUE x) { return INT2FIX(NUM2INT(x) + 1); } void Init_Hoge(void) { VALUE rb_class_hoge; /* クラス生成 */ rb_class_hoge = rb_define_class("Hoge",

    C言語を使ってRubyの拡張ライブラリを作ってみる - Watsonのメモ
    xmx3
    xmx3 2008/09/25
  • ゲームプログラミングの館(C言語)

    ホームページはこちらに引っ越しました。 http://dixq.net/ 上からも行けますが、ゲームプログラミングの館はこちらです。 http://dixq.net/g/ 今日 昨日 - Remical Soft -

  • FFmpeg APIで、さまざまな動画を操る - 前編:CodeZine

    はじめに こんにちわ、hirataraです。 近年、YouTubeやニコニコ動画に代表される動画共有サービスの需要が、急速に高まっています。そのような状況で、オープンソースの動画読み書きソフトウェア「FFmpeg」が、にわかに注目を集めています。 稿では、そのFFmpegの共有ライブラリを直接呼び出して、C言語から動画を扱う方法を紹介します。FFmpegにはffmpegという便利なコマンドがついていますので、ほとんどの場合はこのコマンドを利用します。しかし、FFmpegを共有ライブラリ付きでコンパイルすると、自分の作ったプログラムから直接FFmpegAPIを利用することが可能になります。 FFmpegの共有ライブラリを利用すると、動画をファイルからデコードして再生をしたり、新たな動画を作成して特定フォーマットでエンコードし、ファイルに保存したりすることができます。対応codecがたくさ

    xmx3
    xmx3 2008/06/20
  • 「【C言語】二次元配列の動的確保」(1) Insider.NET - @IT

    IT 会議室 Indexリンク Windows Server Insider Insider.NET System Insider XML & SOA Linux Square Master of IP Network Java Solution Security & Trust Database Expert RFID+IC リッチクライアント & 帳票 Server & Storage Coding Edge @ITクラブ Cafe VB業務アプリケーション開発研究 @IT SpecialPR

    xmx3
    xmx3 2008/05/17
  • sizeof演算子

    せりか式 - C 言語チュートリアル - sizeof演算子 sizeof演算子について検索してくる人が多いようなので,真面目にsizeof演算子についても書いておくことにします. 簡単に言うと,sizeofに渡された型や変数のメモリサイズを調べるものです. sizeof演算子は2種類の使い方があります. sizeof(型) sizeof 変数や定数,あるいは式など 前者の型を与える方は特に悩む必要は無いと思います. 単に指定した型が利用するメモリサイズを返すものです. 問題は,後者の変数や定数を渡す方です. sizeofに変数を渡した場合,その変数名で確保されているメモリサイズを返します.

    xmx3
    xmx3 2008/04/28
  • C 言語の配列について - IT戦記

    僕の理解も相当間違ってたみたいですね 「 *s 」と「 s[] 」の違い - IT戦記 書いてよかった>< 書かぬは一生の恥になるところでしたね! ありがたい突っ込みありがとうございます>< 404 Blog Not Found:c - *sとs[]の違い http://d.hatena.ne.jp/PyTest/20080404/1207273307 はてなブックマーク - 「*s = "...";」 と 「s[] = "...";」 の違い - IT戦記 だいたい分かった気がする 違ってたらきっと誰かが突っ込んでくれる>< 配列 ポインタはキモくなくて、配列がキモいってことが分かった。 あまちゃん: 配列は式の中に置くと「一部の例外」をのぞいてその場で「先頭要素のポインタ」の値として扱われるよ ひとちゃん: 式じゃないところってどこ>< あまちゃん: 宣言ぐらいじゃね ひとちゃん: で

    C 言語の配列について - IT戦記
    xmx3
    xmx3 2008/04/28
  • enbug diary(2008-02-02)

    _ 日常 当は朝のうちに行くつもりだったのに、 結局夕方になってから、 No Country for Old Men を観に行った。 原作の評判は聞いていたのだが、映画も割と評判良さそうだったので、 見に行く気になった。 少々オーソドックスなストーリーと言えなくもないが、 映画の世界にどっぷり浸かれて、かなり良かったー。 ハリウッドじゃ、最近はゲームやコミックの映画化が多くて、 どうしても勧善懲悪な内容になりがちで、 少々傷気味だっただけに、 こういう善対悪にならない構図は非常によろしい。 一応善に限りなく近い存在であるシェリフは常に事件から一歩退いた位置にいるし、 観客の多くが一見善と捉えがちな主役は所詮こそ泥だ。 どっちの方がより恐ろしい存在か程度の違いしかないと言っていい。 たぶん、この映画で最も重要なテーマは自分の運命の決め方なんだと思う。 われわれは常に何かを選択しながら生き

    xmx3
    xmx3 2008/02/04
  • 1