タグ

Cに関するma_koのブックマーク (20)

  • ゼロから学ぶ!最新C/C++ - 日経ソフトウエア バックナンバー購入:ITpro

    日経ソフトウエア編 ■A4変型判,204ページ+付録DVD-ROM ■定価 2520円(税込) ■発行 日経BP社 ■発売 日経BPマーケティング ■ISBN978-4-8222-2264-2 ゼロから学ぶ!最新C/C++は、“最強のプログラミング言語”C/C++の入門書です。付録DVD-ROMに収録したマイクロソフトの最新開発ツール「Visual Studio 2010 Express」(Visual C++ 2010 Expressを含む)をインストールして、すぐにC/C++プログラミングを始められます。開発ツールの操作法とprintf関数を使った文字列出力からスタートし、C言語で欠かせないポインタの利用例、日語文字をきちんと処理するためのMBCS/Unicode対応、C++のクラス作成や継承、.NET Frameworkを使ったWindowsアプリケーションの開発など、実

  • Cプログラムをデバッグする基本的な方法 | エンタープライズ | マイコミジャーナル

    The Geek Stuff How to Debug C Program using gdb in 5 Simple Steps - The Geek Stuffにおいてgdbを使ったCプログラムの基的なデバッグ方法が紹介されている。あらかじめ問題を仕込んである短いCのソースコードと、それをデバッグオプション付きでビルドして、実際にどのようにデバッグを実施すればいいかが簡潔にまとまっていて参考になる。同記事では次のようなCで記述したソースコードを用意。 階乗計算プログラムをデバッグする例 このソースコードは階乗を計算するという内容。「for (i = 1; i < num; i++) j = j * i」の部分が階乗計算部分だが、変数jが初期化されていないため階乗の計算になっていない。jにどういった数値が入っているかは実行する環境によって左右される。How to Debug C Pro

  • アルゴリズムの紹介

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

  • C言語これくらいは覚えよう か つ ら だ 桂田 ま さ し 祐史 2008 年 6 月 5 日 since 2005 この文書は http://www.math.meiji.ac.jp/~mk/labo/text/ に最新版を置きます。 (この文書はしばらく工事中…) 入出力�

    C言語これくらいは覚えよう か つ ら だ 桂田 ま さ し 祐史 2008 年 6 月 5 日 since 2005 この文書は http://www.math.meiji.ac.jp/~mk/labo/text/ に最新版を置きます。 (この文書はしばらく工事中…) 入出力、繰り返し、関数を自分で定義する、ベクトルと行列、これくらいできれば… 1 勉強の仕方 1.0.1 (私流) 勉強法 プログラミング言語を勉強するためには、適当に選んだ一冊のに載っているプログラムを 一通り自分の手で打ち込んで実行してみることが第一歩であろう。それと並行して、それらの プログラムを変更・発展させたプログラムを自分で作ってみるというのが、標準的なやり方だ と思う。 ある程度慣れてきたら、他人の書いた、一つの作品と呼べるようなプログラムのソース・プ ログラムを読む1 経験を積むことがお奨めである。 独

    ma_ko
    ma_ko 2009/07/05
  • マルチプラットフォームで動作する物理エンジン·Chipmunk MOONGIFT

    物理エンジンを実装したライブラリは多数存在する。なぜにここまで物理エンジンに惹かれるのか。ゲームを作成する場合や、そのような物理現象のシミュレートを行う際に必要なのは分かる。だがそれだけに収まらない楽しさがそこにはある。 C言語で作られたパフォーマンスの高い物理エンジン ピタゴラスイッチを見て面白いと思うあの感覚だ。実際にリアルで行うと同じものを再現するのは難しいが、コンピュータ上であれば幾らでも試すことができる。 今回紹介するオープンソース・ソフトウェアはChipmunk、C言語で書かれた物理エンジンだ。 ChipmunkはC言語で書かれており、Windows/Mac OSX/Linuxなどマルチプラットフォームで動作する。さらにRuby向けの拡張も提供されている。様々な場面で利用できるだろう。特に2Dのゲーム制作を目的としているようだ。 これが非常に良くできている! デモも幾つかあるが

    マルチプラットフォームで動作する物理エンジン·Chipmunk MOONGIFT
    ma_ko
    ma_ko 2009/06/21
    Ruby用のバインディングもあるとか
  • C入門

    C入門 基礎知識は仮定しません あなたは 人目のお客さんです。 ゆっくりしていってください。 C入門をはじめます。これは、大学で受け持っている「Cの半期講義」の補助教材です。 ご利用になる場合は以下の点にご注意ください。 1. C++入門やJava入門の前提講義ではありません。 C++入門もJava入門も基礎知識を仮定していません。それらに興味のある人は、直接どうぞ。^^) 特に、私は、「C++Javaを勉強するなら、まずCから」とは思いません。 「C → C++Java」より「C++Java → C」の順に勉強した方がよいかもしれません。 ただし、いずれにしても、Cを知っていて悪いことはありません。 2. 「プログラマ予備軍」のためのハードな講義ではありません。 あくまで半期科目です。「基礎教養」的な内容にしようと思っています。 特に、はじめてプログラミングをする人向きに書きます。

    ma_ko
    ma_ko 2009/05/23
  • C++入門

    C++入門 基礎知識は仮定しません あなたは 人目のお客さんです。 ゆっくりしていってください。 C++入門1   プログラミングの基礎知識 C++入門2   coutを使った出力 C++入門3   cinを使った入力 C++入門4   オブジェクト指向について C++入門5   クラスを作ろう C++入門6   クラスを作ろう(補足) C++入門7   クラスの練習 C++入門8   コンストラクタの引数 C++入門9   クラス間の関係 C++入門10  乱数 C++入門11  while文とfor文 C++入門12  値を戻す関数 C++入門13  値を戻す関数の例 C++入門14  パブリックとプライベート C++入門15  継承 C++入門16  継承の練習 C++入門17  さらに継承 C++入門18  デストラクタ C++入門19  配列 C++入門20  ポインタ C++

    ma_ko
    ma_ko 2009/05/23
    C++
  • 【ハウツー】ゼロからはじめるC言語 - 環境構築編 (1) C言語の概要 | パソコン | マイコミジャーナル

    時代に流されない堅実な開発ツール 稿では、80年代から多くの環境で実用され、今もなお多くの現場でプロフェッショナルに愛用されているプログラミング言語 Cについて解説させていただきます。稿の対象読者は、基的なコンピュータの操作方法や基礎的な仕組みについて理解されている、プログラミングに興味のある初学者の方とさせていただきます。プログラミング経験は不問ですが、C言語以外のプログラミングの経験が多少でもあれば、より簡単に読み進めることができるでしょう。 C言語は、専門学校などでも基礎的な技術としてカリキュラムに組み込まれており、一時はプログラマへの登竜門的な言語であると考えられていました。その地位は、現在も変わりませんが、アプリケーション開発が複雑になるにつれて、より生産性や安全性の高い言語が作られ、C言語の役割も限定的になってきています。例えば、Windowsアプリケーション開発ではVi

    ma_ko
    ma_ko 2009/05/23
  • 【インフォシーク】Infoseek : 楽天が運営するポータルサイト

    日頃より楽天のサービスをご利用いただきましてありがとうございます。 サービスをご利用いただいておりますところ大変申し訳ございませんが、現在、緊急メンテナンスを行わせていただいております。 お客様には、緊急のメンテナンスにより、ご迷惑をおかけしており、誠に申し訳ございません。 メンテナンスが終了次第、サービスを復旧いたしますので、 今しばらくお待ちいただけますよう、お願い申し上げます。

    ma_ko
    ma_ko 2009/05/23
  • Cでのポインタの読み方

    Cでのポインタの読み方 Cのポインタの読み方は、ルールを知らないと摩訶不思議です。 ルールを覚えれば、 int (*p[5])[3]; char (*(*fp)(void))(int); なんてのも解読する事ができます。 大事な前程 ポインタを読む際には、「英語で読む」必要があります。 「え~、英語~」 と思う方もいるかもしれませんが、逆に日語で読む方が大変です。 基ルール ルール 後置演算子が優先。 関数の() 配列の[] 前置はあとで。 要は、「後ろに何かあったら、後ろが優先」です。 演算子の英語での読み方 * pointer to ... () function returning ... [] array of ... Lesson 1 まず、演算子が単独で出てくる場合です。 Lesson 1-1 pointer to ... int *p; これは、まずpを見ましょう。 i

    ma_ko
    ma_ko 2009/01/20
    ポインタの読み方
  • 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
  • Rubyの拡張ライブラリの作り方 - アホメモ - Seesaa Wiki(ウィキ)

    [ 一般 ] アホメモ アホなメモ 編集 履歴 添付 設定 新規ページ作成 メニュー カテゴリー Wiki内検索 * 最近更新したページ 2008-06-16 pack,unpack 2008-06-15 FrontPage 2007-04-15 Firefox/クリップボード 2007-04-06 firefox拡張メモ 2007-03-31 ratoc REX-SATA 2007-03-26 CD・DVD収納 CD・DVD収納ケース(箱型) MEDIA PASS 2007-02-13 Rubyメモ 2007-02-11 SWin::Window 2007-02-09 VisualuRuby ATL/WTL メモ 2007-02-07 Ruby試行004 クラス変数 2007-02-04 秀丸強調表示メモ 2007-02-02 Ruby試行006 クラス定数 2007-01-31 ru

  • ライブドアブログ|無料で豊富な機能が充実

    「KOIL FACTORY PRO」で新たな視点でつくる「衣住遊」の体験型フェス「ほにゃらら+らDAY」が10月29日と30日に開催

    ライブドアブログ|無料で豊富な機能が充実
    ma_ko
    ma_ko 2007/11/20
    inline C
  • Evan Weaver

    ma_ko
    ma_ko 2007/03/20
  • http://nanoblog.ath.cx/?module=readmore&id=8

    ma_ko
    ma_ko 2007/01/29
    まとまってる
  • clmemo@aka: Emacs で C 言語プログラミングを始める人へのイントロダクション

    Emacs エディターで C 言語のプログラムを書く人向けに、入門用の解説がないように思う。そこで、知っておくと便利な機能をまとめてみた。 読者は、Emacs の操作とカスタマイズが最低限できる人を対象にしている。つまり、C-x C-f といったショートカット・キーが使えて、.emacs の設定ファイルがいじれる人。各機能について、基的な使い方とその効果、あと最低限の設定について書き出した。 目次 ソースの色付け インデント アラインメント コメント info マニュアル スペル・チェック タグ・ジャンプ 関数名の補完入力 コンパイルとエラー行ジャンプ ChangeLog ファイル 1. ソースの色付け Emacs は、C 言語のソース・ファイルを解析して、if や for といったキーワードに対して、自動で色を付ける。 色を付けることでソースにメリハリが生まれ、可読性が上がる。また、ス

    clmemo@aka: Emacs で C 言語プログラミングを始める人へのイントロダクション
  • How to create a Ruby extension in C in 43 seconds

    In math, a unary operation is an operation with a single input. In Ruby, a unary operator is an operator which only takes a single ‘argument’ in the form of a receiver. For example, the – on -5 or ! on !true. In contrast, a binary operator, such as in 2 + 3, deals with two arguments. Here, 2 and 3 (which become one receiver and one argument in a method call to +). Ruby only has a handful of unary

    ma_ko
    ma_ko 2006/11/21
    RubyInlineのもっと簡単な例
  • 使いながら覚えるGDB

    はじめに プログラムのデバッグと言えばひたすらprintfを挿入しまくっていたある日、 デバッガなる便利な代物があるということを知った。なんでもプログラムを一行 ずつ実行できて、変数の値をその場で確認できるらしい。これは是非使ってみねばと 思い、UNIX環境で使えるGDBというデバッガを試してみた。が、何がなんだかさっぱり 分からない。Webを検索するとマニュアルの日語訳が見つかった。これで勉強すれば 使えるようになるかも、と読み始めるも、いきなりm4がどうのこうのだの、意味不明 の文章が続く…。 これは私がGDBを使い始めた時の話だが、似たような経験を持っている人が他にもいる と思う。 GDBのマニュアルは初心者にはすこし敷居が高い。 GDBに限らずマニュアルというものは初学者が参考書として用いるのには 適していない。というのも、マニュアルの類は情報量が多い分、重要な部分を 見つけ出す

    ma_ko
    ma_ko 2006/09/09
    Cのプログラム追う時に
  • LoveRubyNet Wiki: RubyExtensionProgrammingGuide

    2008-01-09 15:51:08 +0900 (275d); rev 19 これは草稿です。 いずれ正式なところに移す予定。 対象とする読者 稿は以下のような読者を対象にしています。 Ruby の拡張ライブラリを書いたことがない C プログラミングがそれなりにできる Ruby プログラミングがそれなりにできる 2 に関して。 「ポインタって何?」レベルの人は不可です。 構造体とポインタをちゃんと使ってプログラミングのできる人を対象とします。 3 に関して。 以下のプログラムの結果がどうなるか、 考えるだけでわかるようにしておいてください。 class C p self # 何が表示される? def C.m puts '1' p self end def m puts '2' p self end end C.m # 何が表示される? C.new.m # 何が表示される? このマニュ

  • Ruby用拡張ライブラリをCで作る --- Little Penguin

    Ruby用拡張ライブラリをCで作る Helloクラス Rubyのソースにしてみればおそろしく簡単な下記のソースを、今回はCで記述し てみることにする。 class Hello def hello print "Hello, Ruby World.\n" end end 完成品のソース(hello_rb.c) #include <stdio.h> #include <ruby.h> VALUE hello(void); Init_Hello(){ VALUE cHello; cHello = rb_define_class("Hello", rb_cObject); rb_define_method(cHello, "hello", hello, 0); } VALUE hello(void){ printf("Hello, Ruby World.\n"); return Qnil; } ソ

  • 1