タグ

C++に関するaidiaryのブックマーク (32)

  • gdb の使い方・デバッグ方法まとめ

    たとえば、変数 var の値を2進数で表示したい場合は、次のように指定します。 (gdb) p/t var 一覧表示 whatis 変数の型を調べる。 info b 今設定しているブレークポイントの一覧を表示 セグメントフォルトをした後に利用すれば、どの関数で発生したか確認できます。 info stack 関数の呼び出しスタックの一覧を表示 info Thread 存在しているスレッドの一覧を表示 異なるアドレスにおける処理継続 以下のコマンドを使用することで、ユーザが選択したアドレスにおいて実行を継続させることができます jump linespec linespecで指定される行において、実行を再開 jump *address addressで指定されるアドレスにある命令から、実行を再開 アドレスが分かっている場合のメモリリーク出力 xはhexの意味です。 (gdb) p (char*)

    gdb の使い方・デバッグ方法まとめ
    aidiary
    aidiary 2016/04/25
  • Big Sky :: C言語から使えるJSONパーサ、jansson がとても直感的で良い

    おなじみC/C++から使えるJSONライブラリを紹介するコーナー。まずは過去のまとめ。 最速と言われる JSON パーサ「rapidjson」が当に爆速なのか試してみた。 C言語から使えるJSONパーサ、parson が思った以上に良い仕事をしている。 僕がboost::asioとboost::property_treeを使いHTTPプロキシ環境下で非同期にGoogle Search APIから検索するまでにやった、たった一つの事。 C言語から使えるJSONパーサ、JSMNを試してみた。 何も見ずにC++でjsonパーサが書けるか試してみた。 ヘッダファイルだけでC++から使えるJSONパーサ「picojson」が凄い! 最近は結構 matsuu さんのブクマから見つけて記事を書いてたけど今日はそうじゃない所からご紹介。 Jansson — C library for working w

    Big Sky :: C言語から使えるJSONパーサ、jansson がとても直感的で良い
    aidiary
    aidiary 2013/07/11
  • Unicode の文字列をソースコードに埋め込む方法 - bkブログ

    Unicode の文字列をソースコードに埋め込む方法 Unicode の文字列をソースコードに埋め込む場合、直接 UTF-8 などで文字列を書く方法と、\uXXXX などのようにエスケープして表記する方法があります。後者の方法についてまとめてみました。 \uXXXX 形式の場合 Java, JavaScript, Python, C++, C (C99から) などの多くの言語では \uXXXX という表記 (universal character names) でUnicode の文字を文字列の中に埋め込めます。たとえば、「あいう」は "\u3042\u3044\u3046" となります。 \uXXXX で埋め込んだ文字がどのように解釈されるかは言語や処理系によって異なります。 gcc/g++ の場合、 -fexec-charset オプションで、実際に使う文字セット・エンコーディングを指

    aidiary
    aidiary 2011/11/01
  • Codian - ポインタと文字列とCStringと

    更新日: 2007/11/19 動作確認環境:Windows XP Professional SP2, Visual C++ 6.0 Professional SP6 サンプルプロジェクト(Visual C++ 6.0): MxA09_VC6.zip サンプルプロジェクト(Visual C++ 6.0用、サンプルプログラム13のみ): MxA09_Unicode_VC6.zip 最後は文字列についてです。 MFCにはとても便利なCStringクラスがありますが、それをどう使えばいいのか、やや遠回り気味に説明したいと思います。 ちなみに文字列やポインタについては、Codianの「ポインタ」でも解説していますのでそちらもどうぞ。 C/C++言語の文字列型 なんてものは存在しません!! Visual Basic他、多くの言語は簡単に文字列を操作できる「文字列型」を持っていますが、C/C++言語に

    aidiary
    aidiary 2011/11/01
  • C標準ライブラリ関数一覧

    第1項:入出力 <stdio.h> 第2項:汎用 <stdlib.h> 第3項:文字処理 <ctype.h> 第4項:文字列処理 <string.h> 第5項:数学関数 <math.h> 第6項:時間 <time.h> 第7項:制御 [1]入出力 <stdio.h> 主にファイルを取り扱う関数です。 C言語では、ディスク以外の周辺機器もファイル扱いできます。 また、規定のファイルポインタとしてこれらを扱うことが出来ます。 [  規定のファイルポインタ  ] stdin 標準入力(普通はキーボード) stdout 標準出力(普通はディスプレイ) stderr 標準エラー出力(普通はディスプレイ) これらは、リダイレクト等の方法でユーザーが変更することもできますし、 環境によっては、別の機器に関連づけられたり、無効になっていることもあります。 [  fopen  ] 関数型

    aidiary
    aidiary 2011/10/26
  • libxml2チュートリアル - 雑記帳 - Seesaa Wiki(ウィキ)

    [ 一般 ] 雑記帳 編集 履歴 添付 設定 新規ページ作成 メニュー このウィキの読者になる カテゴリー 最近更新したページ 2006-04-18 libxml2チュートリアル XMLメモ 2006-04-16 FrontPage MenuBar1 MenuBar2 Profile Calendar Memo Bookmarks 最新コメント Menu libxml2チュートリアル Libxml Tutorial John Fleck <jfleck@inkstain.net> Copyright © 2002, 2003 John Fleck 1.序文 Libxmlは、XMLデータを解読し、作成し、操作するための、C言語ライブラリです。このチュートリアルはコード例と、その基的な機能性の説明を提供します。 Libxmlとその利用についてのより詳細な情報は、プロジェクトのホームページが利

    aidiary
    aidiary 2011/10/25
  • Open Tech Press | Libxml2 を使う

    XML はあらゆる分野における基礎技術となって利用が進みつつあるが、GNOME 環境においても例外ではない。GNOME 2 においては Libxml2 が XML を扱うための基ライブラリとして採用され、あらゆる局面で活用されている。稿ではこの Libxml2 を使った簡単なプログラミング例を紹介しよう。 GNOME と XML GNOME の多くのアプリケーションは設定に関する情報を GConf というフレームワークを利用して保存しているが、この GConf は標準では XML 形式のテキストファイルを利用して情報を保存している。GNOME を利用しているなら、ホームディレクトリにある ~/.gconf/ というディレクトリの中を覗いてみよう。そこの中には %gconf.xml というファイルがいくつも存在しているが、これが GConf によって書き出されたユーザ固有の設定情報である

    Open Tech Press | Libxml2 を使う
    aidiary
    aidiary 2011/10/24
  • Stroustrup: Programming -- Principles and Practice Using C++

    Programming -- Principles and Practice Using C++ (Second Edition) This is the support site for Stroustrup: "Programming: Principles and Practice using C++ (Second Edition)" Addison-Wesley 2014, ISBN 978-0-321-99278-9. support for the first edition of PPP This book is aimed at beginners taking a programming course and people learning C++ as self study. For details, see these samples: Preface Table

    aidiary
    aidiary 2011/08/31
    ストラウストラップのプログラミング入門のサポートページ
  • 数列辞典

    The page you're looking for has moved, been replaced, or is currently unavailable to view. If you previously bookmarked a page and have now reached this message, check to make sure the link was not shortened, or go to our home page to find the page from there. We've been upgrading this site. If you selected a link on our site and reached this message, use the Back button to return to the previous

    数列辞典
    aidiary
    aidiary 2011/08/15
  • モダンなC, C++の開発環境の構築方法 - 考える人、コードを書く人

    まだC, C++がないようなので書いてみた。主にLinux(DebianとかUbuntu)での環境構築について。 コンパイラ まずはapt-getでコンパイラをインストールする。UbuntuやDebianなら以下のコマンドでgccやg++および標準ライブラリ等がインストールされる。 $ sudo apt-get install build-essential デバッグツール デバッガおよびデバッグツールは少なくとも以下の三つは入れる。(あとltraceも欲しいかな?) GDB 言わずと知れたGNUのデバッガ Valgrind メモリリークや不正メモリアクセスの検出 strace システムコールのトレース $ sudo apt-get install gdb valgrind strace ビルドツール C, C++のビルドツールといえばまずmakeが浮かぶけど、最近ではSConsやCMak

    モダンなC, C++の開発環境の構築方法 - 考える人、コードを書く人
    aidiary
    aidiary 2010/08/24
    C++のツールいろいろ
  • Routine-Work:/topics/SDL/setup.html

    [TOP] - [Topics] - [SDL] - [開発環境] [MSYS + MinGW] [cygwin] [VinePlus] SDL 開発環境 SDL 開発環境構築手順 お金がなくて市販のコンパイラは買えないけれどゲームを 作ってみたい人や、どうせ作るならマルチプラットフォームにしたい、 というような人向けの開発環境の構築手順です. Win32 + MSYS 環境 + MinGW (2007-08-26) Win32 + cygwin 環境 + gcc の mingw32 モード(2008-06-11) Vine Linux 3.0 で Vine Plus からインストール(2004-08-12) 昔のドキュメント はこちら. 開発環境構築用のファイルとか MSYS + MinGW 環境 ソースファイル mingw32版バイナリ テストプログラムなど [TOP] -

    aidiary
    aidiary 2010/06/05
    MinGW上でのSDL開発環境の作り方
  • GTK+ - Download for Windows

    Requirements Packages You will need to get the GLib, cairo, Pango, ATK, and GTK+ developer packages to build against GTK+. To run GTK+ programs you will also need the libpng and zlib packagages, and if your code uses gettext for internationalisation and/or you want GTK+ internalisation, the gettext-runtime package. The packages here are for people who develop software that uses GTK+. This page is

    aidiary
    aidiary 2010/02/04
    SDL_imageで使うlibpng.dllがダウンロードできる
  • SDL / OpenGL 分科会 - 第 4 回

    今回はサウンド (効果音 & BGM) の使い方を紹介します。 また、次回から OpenGL に入るので、これまで説明できなかった細々としたことを簡単に補足しておきます。 サウンド サウンドの使い方もマニュアルに載っているので、まあ大体その通りにやれば分かるでしょう…と言いたいところなのですが、実は SDL のサウンド機能はあまり使いやすいものではありません。 というのも、SDL はその名 (Simple DirectMedia Layer) の通り、非常にシンプルな (厳選された機能を高性能で提供することを目指した) API 群なので、ユーザに近い高レベルの機能はそれほど多くないのです。 サウンドに関して言えば、波形データを定期的にメモリに書き込んで演奏を指示する、というちょっと面倒なことをしなければいけません。 しかしそれではさすがに不便なので、代わりに SDL_mixer というライ

    aidiary
    aidiary 2009/11/26
    SDL_Mixerを使ったBGMと効果音の再生
  • Dependency Walker (depends.exe) Home Page

    Dependency Walker is a free utility that scans any 32-bit or 64-bit Windows module (exe, dll, ocx, sys, etc.) and builds a hierarchical tree diagram of all dependent modules. For each module found, it lists all the functions that are exported by that module, and which of those functions are actually being called by other modules. Another view displays the minimum set of required files, along with

    aidiary
    aidiary 2009/11/15
    DLLの関数名を取得
  • C/C++からSQLiteを使う - PukiWiki

    C++>C/C++からSQLiteを使う 概要 † SQLiteC++から使おうと思ったのですが、あまり入門者向けのページがないことからいろいろ勉強しつつ覚書としてまとめることにしました。環境はWindowsXP、VC++2008 Express Editionです。 ↑ ダウンロード手順 † http://www.sqlite.org/へいく ↓ Downloadを選択 ↓ sqlitedll-3_6_11.zip(dllとdefが入っている) sqlite-source-3_6_11.zip(SQLiteのソースが入っている) 以上をダウンロードして解凍(バージョンが異なってもいいと思う) あとsqlite-3_6_11.zipもダウンロードしておくといい。 コマンドライン操作するときに使う。 ↑ LIB(インポートライブラリ)の作成 † Visual Stadioの

    aidiary
    aidiary 2009/11/12
  • SQLite バージョン 3 の C/C++ インターフェース

    [ 索引 | 原文 ] #define SQLITE_OK 0 /* 成功 */ #define SQLITE_ERROR 1 /* SQL エラーまたはデータベースが見つからない */ #define SQLITE_INTERNAL 2 /* SQLite 内部ロジックエラー */ #define SQLITE_PERM 3 /* アクセス権がない */ #define SQLITE_ABORT 4 /* コールバックルーチンが abort を要求した */ #define SQLITE_BUSY 5 /* データベースファイルがロックされえいる */ #define SQLITE_LOCKED 6 /* データベースのテーブルがロックされている */ #define SQLITE_NOMEM 7 /* malloc() に失敗した */ #define SQLITE_READONLY

    aidiary
    aidiary 2009/11/12
  • 初心者の初心者による初心者の為のSDL

    あなたは、人目の訪問者です。 はじめに VC++でSDLを利用したゲームプログラミングの解説をやっていきます あまり細かい解説ではないかもしれません その分出来るだけサンプルソースのコメントは書いていこうと思っています VC++以外ではフリーのコンパイラのBCCの導入についての解説もあります 言語はC++でやっていますが、ベターC程度にしか使っていないので、 C++の知識がなくても大丈夫だと思います 特にC言語学習中でとにかく絵をだして動かしてみたいという人は是非見てください また、データにはフリー素材、ツールにはフリーソフトを積極的に使っていこうと思っています 使用したフリー素材/フリーソフトはかならず紹介させていただきますし、 WEBサイトのある場合は必ずリンクさせていただきます なお、サンプルソースおよび私の作成したデータの使用には特に条件はつけませんが、 著作

    aidiary
    aidiary 2009/11/12
  • http://www.tacoworks.jp/software/SDLdoc-jp/html/

    Table of ContentsI. SDL GuidePrefaceAbout SDLAbout SDLdocCredits1. The BasicsIntroductionInitializing SDL2. Graphics and VideoIntroduction to SDL VideoUsing OpenGL With SDL3. Input handlingHandling JoysticksHandling the Keyboard4. ExamplesIntroductionEvent ExamplesAudio ExamplesCDROM ExamplesTime ExamplesII. SDL Reference5. GeneralSDL_Init -- SDLを初期化します。SDL_InitSubSystem -- サブシステムを初期化します。SDL_QuitS

    aidiary
    aidiary 2009/11/06
  • Eclipse + CDT + MinGW + SDL + OpenGL : ψ(プサイ)の興味関心空間

    ψ(プサイ)の興味関心空間 膨大な知識の電波は 全てを知ってるわけじゃないから 新しいことまだ見つけられる 宇宙の果てに広がってゆける (MOSAIC.WAV/電気の恋人) 昨日のアイレムは凄かったですね.凝りすぎて逆につまらないかと思ったら,ウサギで吹いたw ♪Eclipse + CDT + MinGWでSDLをコンパイルするメモ EclipseのC/C++用プラグイン,CDTとWin用GCCのMinGWを使ってSDLプログラムをコムパイルするメモメモです.なんだか今日はノリノリです. とりあえずまずは,C-Compiler Wikiを参考にHelloWorldを表示するプログラムは作れるようになっておいてください. ♪SDLを導入しておく ダウンロードページより,MinGW用SDL開発ライブラリを手に入れておきます.ファイル名は今のところは「SDL-devel-1.2.9-mingw

    aidiary
    aidiary 2009/11/06
    SDLでundefined reference to `WinMain@16'が出る場合
  • メモリリークしない安全なプログラムの書き方

    とりあえず動くプログラムを書く ここでは例として、Fooという構造体の2次元配列を、引数で指定された幅と高さで作る、createFooMatrixという関数を作ってみます。 なお、配列の各要素を、initializeFoo関数で初期化しています。 Foo **createFooMatrix ( int width, int height ) { Foo **ptr = NULL; int w, h; ptr = (Foo **)malloc(height * sizeof(Foo *)); for (h = 0 ; h < height ; h++) { ptr[h] = (Foo *)malloc(width * sizeof(Foo)); for (w = 0 ; w < width ; w++) { initializeFoo(&ptr[h][w]); } } return ptr;