タグ

Cに関するtencubeのブックマーク (14)

  • Deep C

    Programming is hard. Programming correct C and C++ is particularly hard. Indeed, both in C and certainly in C++, it is uncommon to see a screenful containing only well defined and conforming code.Why do professional programmers write code like this? Because most programmers do not have a deep understanding of the language they are using.While they sometimes know that certain things are undefined o

    Deep C
  • 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
  • 2NT -無料ブログ 無料ホームページ 等-

    tencube
    tencube 2009/02/04
    これは良いまとめ。ゲームに限らずwindowsでGUIを使うときに。
  • C言語の行く末 - なつたん

    ときどきの雑記帖 i戦士篇から > というか、いいかげんライブラリアンとかリンカーの仕様まで踏み込んでかないと 言語としてのCはもーどうにもならんような気がします。 プログラミング言語としてCというのはC90で十分だと思うし、C++との互換性をキープし続けた方が良いと思っている。もう遅いけど。 仕事関連でCからのハードウェア設計を見ていると、Cは特定用途向け言語のメタ言語として生き残る気がする。具体的な例を上げると、CUDAやらDAPDNAで使われる拡張C言語と呼ばれるやつ。ちょっと前だとSpecCとか。if,while,switchが使えて、関数呼び出しができれば十分という環境って結構ある。 例としてSpecCの仕様書から一部を持ってきてみる。pdfなのでリンクはなし。 http://www.specc.gr.jp/tech/SpecC_manual_Jap.pdf >ANSI-Cと相違

    C言語の行く末 - なつたん
    tencube
    tencube 2009/01/22
    C言語はなくなっても、C言語っぽい文法はなくならない。
  • Linus「C++ はひどい言語だ。これは、多くの平均以下のプログラマーが使ってるために さらに輪をかけてゲロゲロになっていて、どうしようもないゴミが 簡単に生産されるようになってる」

    /15 [4] (21:54) 原文: http://lwn.net/Articles/249460/ From: xxx To: xxx Subject: Re: [RFC] builin-mailinfo.c をマシな文字列ライブラリを使うようにすること Date: Thu, 6 Sep 2007 18:50:28 +0100 (BST) Message-ID: <alpine.LFD.0.999.0709061839510.5626@evo.linux-foundation.org> On Wed, 5 Sep 2007, Dmitry Kakurin wrote: > > Git のソースコードを最初に見たとき、ヘンだと思ったこと: > 1. C++ じゃなくてただの C を使ってる。理由は謎。移植性がどうとか言わないで、 > そんなのウソに決まってるから。 *あんた* のほうこそ

    tencube
    tencube 2009/01/21
    凡人です。C++使ってます。ゲロゲロです
  • CでRの拡張したら速すぎて(40〜50倍)吹いたwww - yasuhisa's blog

    昨日Gibbs Sampler Algorithmをやってみたわけだが、Rの中でfor文を書いていて必要となるサンプル数が多くなると非常につらくなってくることは目に見えている。しかも、MCMCでは初期値依存となる期間のサンプルを捨てないといけない。そういうわけでじゃんじゃんサンプルを作っても大丈夫なような速度が必要。 Rで速度を上げようと思ったらapplyファミリーを使うとかベクトル単位での処理をするetcが常套手段*1。が、今回は質的にfor文が必要なケースである。 で、困るわけだがRにはC、C++、fortranを使って拡張する機能がある。詳しくはこの辺に載っている。そういうわけでCのポインタもアドレスも理解していないid:syou6162がRが好きすぎたためにCを書いてみたという感じの内容。 #include <R.h> #include <Rinternals.h> SEXP r

    CでRの拡張したら速すぎて(40〜50倍)吹いたwww - yasuhisa's blog
  • C/C++ for Computational Physics

    Last revised on May 25, 2000 UNIX & XWindow 環境における C/C++プログラミング言語の基礎とその計算物理への応用を解説します。 このホームページの古い版の偽ミラーサイトが存在するのでご注意ください。 物のサイトは http://www-cms.phys.s.u-tokyo.ac.jp/~naoki/CIPINTRO/ です。 前書き 推奨図書一覧 C言語とC++言語の基礎文法の初心者向け解説 (プログラム初心者を対象としたC/C++言語の入門です) 第1章 C言語とC++言語の役割 第2章 簡単な計算 第3章 ループで繰り返し計算 第4章 配列で大量データ処理 第5章 関数で計算の分担 第6章 文字列の操作 第7章 ファイルの操作 第8章 グラフィック(XWindow System利用者向け) 高校物理の計算例 (高校生を対象として初歩的な物

  • http://google-styleguide.googlecode.com/svn/trunk/google-c-style.el

    ;;; google-c-style.el --- Google's C/C++ style for c-mode ;; Keywords: c, tools ;; google-c-style.el is Copyright (C) 2008 Google Inc. All Rights Reserved. ;; ;; It is free software; you can redistribute it and/or modify it under the ;; terms of either: ;; ;; a) the GNU General Public License as published by the Free Software ;; Foundation; either version 1, or (at your option) any later version,

  • 免許制はいらんでしょ

    ネタ元→C/C++ 免許制はどうですか?/C/C++ 免許制 その 2 最初に感想を書いておきます。 「自社で試験と規定作って自社内でその規定を守ればいいと思う。」 (但し、腕があったら免許制大賛成するんだけどね。無免許でBJ先生の如く法外な金額を取って仕事するw) そして、実は免許制になったら免許取るか仕事辞めるか2者択一になるだけだから当はどうでもいい。僕は多分後者。今更そんな試験受けたくない。 仕事辞めたら「不遇な仕事をするプログラマ」と「旬を過ぎたキャバ嬢」が愚痴れる1杯飲み屋をやりたいと思ってます。 ・免許ではなく技術力を客観的に見られればいいのね 免許となれば法整備が必要になる。当然無免許でその業務を行った者への罰則規定がなければ免許そのものに意味がないからだ。 コンピュータ言語如きの為に法整備をするのも大袈裟すぎるし、技術のモノサシが欲しいのであれば情報処理技術者試験のよう

    tencube
    tencube 2008/12/18
    故人の思い入れのある品として棺桶に一緒に入れられました。
  • コンピューター:C言語講座:マルチスレッドについて

    コンピューター:C言語講座:マルチスレッドについて マルチスレッドの特徴 一般的なサーバプログラムでは、多数のクライアントからの処理をできるだけリアルタイムに処理するために、何らかの形で並列処理を行うことが多いものです。たとえば、データベースサーバで、ある検索処理に時間がかかっている間ほかのクライアントが接続すらできない、という状態ではサーバとして失格でしょう。 並列処理を実現する方法としては、 ・プログラム自体を並列処理可能に記述する ・プロセスをもともと多数起動しておく ・fork()を使って子プロセスを起動するマルチプロセス処理 ・マルチスレッドを使用する などが考えられます。プログラム自体をリアルタイム性を考慮しながら記述するのはなかなか大変で、しかもソースが複雑になりメンテナンス性も問題が多くなりがちです。プロセスをもともと多数起動するのは簡単ですが、クライアントがどのプロセスに

  • 高度プログラミング演習(九州大学全学共通教育科目)の説明資料

    実践プログラミング CとC++プログラミングに関するいくつかの例題と解説. 単なるプログラミングテクニックや文法の解説ではなく, 背後にある考え方の習得(アルゴリズム,データ構造,数学など)を重視して いる. プログラムをじっくり眺めそこから技法を学び取る. 最大値 [HTML] 曜日の計算 [HTML] 平均値,分散 [HTML] 2次方程式の解 [HTML] 最小自乗法 [PPT], [HTML] 待ち行列シミュレーション [PPT], [HTML] アーランの即時式モデル [PPT], [HTML] 行列のLU分解 [PPT], [HTML] ニュートン法による非線型方程式の解 [PPT], [HTML] 数値積分 [PPT], [HTML] 2分探索木 [PPT], [HTML] ヒープソート [PPT], [HTML] クイックソート [PPT], [HTML]

  • Linuxカーネルの作り出す世界 − @IT自分戦略研究所

    連載は、ソフトバンククリエイティブ刊行の『ふつうのLinuxプログラミング』のうち第1部「Linuxの仕組み」の中から「第2章 Linuxカーネルの正解」と「第3章 Linuxを描き出す3つの概念」を、同社の許可を得て転載するものです。 書は、LinuxにおけるC言語プログラミングの入門書です。「Linuxの世界が何でできているのか」に着目し、「ファイルシステム」「プロセス」「ストリーム」という3つの概念を紹介しています。 なお、連載は転載を行っているため@IT自分戦略研究所の表記とは一部異なる点があります。ただし、Webで掲載するに当たり、(例えば「書は」としている部分は「連載は」としていること、図版などの省略など)、表現を若干変更している点がありますが、その点ご了承ください。 ■オペレーティングシステム 今どきのコンピュータにはオペレーティングシステム(OS:Operatin

  • Numerical Recipes in C

    �Acrobat � Edition Thanks to special permission from Cambridge University Press, we are able to bring you the complete Numerical Recipes in C book On-Line! To utilize this resource, you will need an Adobe Acrobat viewer linked as a helper program to your WWW browser. Permission is granted by the copyright owners for users of the World Wide Web to make one paper copy of these PostScript files for t

  • C/C++ リファレンス

  • 1