タグ

Cに関するgam-22のブックマーク (8)

  • Ideone.com

    Share or Embed source code <script src="https://ideone.com/e.js/prOfEn" type="text/javascript" ></script> Discover > Sphere Engine API The brand new service which powers Ideone! Discover > IDE Widget Widget for compiling and running the source code in a web browser!

    gam-22
    gam-22 2014/09/24
    謎挙動だ
  • Cとモナド - Ryusei’s Notes (a.k.a. M59のブログ)

    Go言語でEitherモナドは無理がありすぎる感じがした。では、他の言語ではどうだろうか? C言語では関数の戻り値でエラーかどうかを判定しなければならないことが多いけど、&&演算子の短絡評価を使えば、このように簡潔に書くことも可能だ。 #include <errno.h> #include <error.h> #include <stdlib.h> #include <stdio.h> int main(int argc, char** argv) { FILE *fp; char s[100]; int ok = (fp = fopen("hello.txt", "r"), fp != NULL) && (fscanf(fp, "%99s", s) >= 0) && (fclose(fp) >= 0) && (printf("%s\n", s) >= 0); if (!ok) { err

    Cとモナド - Ryusei’s Notes (a.k.a. M59のブログ)
    gam-22
    gam-22 2013/10/21
    “C言語では関数の戻り値でエラーかどうかを判定しなければならないことが多いけど、&&演算子の短絡評価を使えば、このように簡潔に書くことも可能だ。”
  • Cello • High Level C

    #include "Cello.h" int main(int argc, char** argv) { /* Stack objects are created using "$" */ var i0 = $(Int, 5); var i1 = $(Int, 3); var i2 = $(Int, 4); /* Heap objects are created using "new" */ var items = new(Array, Int, i0, i1, i2); /* Collections can be looped over */ foreach (item in items) { print("Object %$ is of type %$\n", item, type_of(item)); } /* Heap objects destructed via Garbage

  • C言語より高速なJavaScriptによるバイナリ操作が話題

    JavaScriptなどのスクリプト言語は動作が遅く、最適なパフォーマンスを得るにはC/C++で実装しなければならないという常識に挑んだ先進的な講演が話題になっています。この話題の発端は2012年10月7日から10月8日までベルリンで開催されたJSConf.euでFelix Geisendörfer氏が行った講演です。 彼の講演の題材はnode.jsからMySQLに接続する為のバインディングのパフォーマンスに着目しています。2010年当時、node.jsにはMySQLのバインディングが存在しておらず、増井さん作のnode-mysqlモジュールが開発中の状態でした。このモジュールはJavaScriptでバイナリを解析しておりJavaScriptのみで開発されていました。この状況を受けてFelix氏が新たにnode-mysqlモジュールを新規に開発を始めました。このモジュールもJavaScri

    C言語より高速なJavaScriptによるバイナリ操作が話題
    gam-22
    gam-22 2012/10/11
    そんなことがあり得るのかと思ったけど、JavaScriptには動的にネイティブコードを生成するというCにはできない芸当をするから可能になったということなんだろうか
  • Cで実現する「ぷちオブジェクト指向」

    はじめに CodeZineではお初にお目にかかります、επιστημη(エピステーメー)です。最初のアーティクルはクラシックなCのお話。 昨今のアプリケーションはオブジェクト指向言語による実装が主流と言ってもいいでしょう。C++Java、VB.NETさらにはRubyPythonといったスクリプト言語まで、オブジェクト指向でない言語を探すのに苦労するくらいです。 記事では、今なお現役バリバリで活躍している手続き型言語の代表格(?)Cによる、オブジェクト指向のマネゴト(オブジェクト指向風味のCコーディングスタイル)を試みます。 対象読者 もっぱらCを主な開発言語として使ってはいるけども、オブジェクト指向に興味と憧れを抱いている方。 抽象データ型 手始めにオブジェクト指向の特徴の1つ、「抽象データ型(ADT:Abstract Data Type)」をCで実現してみます。抽象データ型とは、デ

    Cで実現する「ぷちオブジェクト指向」
    gam-22
    gam-22 2012/06/02
  • C# は無効な式? - 窓世代アマグラマ

    gam-22
    gam-22 2011/12/03
    C++++は左辺値を持たないいから無効な式らしい。
  • “本物のマクロ”でCのコード行数を半分に! - @IT

    2009/09/07 毎年夏に開催される軽量プログラミング言語(LL:Lightweight Language)をテーマにした「LLイベント」。第7回目となる「LLTV」が、2009年8月29日に東京・中野で開催された。この記事ではプログラムの一部、「大改善!!劇的ビフォーアフター」をレポートする。前編では、Rubyによるfortuneコマンドの“増築”と、Firefox拡張によるslコマンドの実装というネタ系発表をレポートした。中編となる記事では、C言語にLisp風のマクロを取り入れ、lsコマンドのソースコードを約半分に“修繕”する匠の技をレポートする。後編では、売り場業務が滞りがちだった販売管理システムをbashコマンドで“建て直した”という劇的ビフォーアフターの発表をレポートする。 Cで書かれたlsのソースコードの問題点 「Real/Macro Metaprogramming On

  • 2NT -無料ブログ 無料ホームページ 等-

  • 1