タグ

cに関するyaottiのブックマーク (43)

  • プログラミング言語 C の新機能

    プログラミング言語 C は 1990 年に ISO で規格化された言語です。その後、何度かの誤りの訂正や wchar_t 型の追加といった追補がなされた後、さらに使いやすくするための新しい機能が検討されてきました。そして、1999 年、ついに新しいプログラミング言語 C の仕様「ISO/IEC 9899:1999 - Programming Language C」(略称 C99) が 1999/12/01 付けで規格として出版されました。ここでは、その新機能を説明します。

    yaotti
    yaotti 2011/03/21
    C99の規格で追加された機能について
  • IBM Developer

    IBM Developer is your one-stop location for getting hands-on training and learning in-demand skills on relevant technologies such as generative AI, data science, AI, and open source.

    IBM Developer
    yaotti
    yaotti 2011/02/07
    ヘッダファイルのキャッシュ
  • An Interview With Linus Torvalds: Linux and Git - Part 1 30 Years Of Linux

    Jeremy founded Tag1 Consulting in 2007. He has been a contributing core Drupal developer since 2002, and helped establish Drupal as a successful CMS through the early popularity of his personal blog, KernelTrap.org. Over the years, he authored and maintained the core statistics module and throttle module, as well as the pager logic and the initial Drupal 5 installer. He continues to contribute to

    An Interview With Linus Torvalds: Linux and Git - Part 1 30 Years Of Linux
    yaotti
    yaotti 2011/01/06
    __builtin_expect
  • Why use apparently meaningless do-while and if-else statements in macros?

    yaotti
    yaotti 2010/11/20
    do {...} while(0)の理由.中括弧なしifを書かなければいいのではとも思う
  • 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

    yaotti
    yaotti 2010/11/18
    自分で書く前に探してみたらあった.良い
  • 1. ガイド — OMakeマニュアル 日本語訳

    1. ガイド¶ あなたがOMakeを始めて使うのであれば、 2. OMakeクイックスタートガイド はどのようにプロジェクトを始めるべきなのかについて、簡単に説明してくれるでしょう。 3. OMakeビルドサンプル ではプロジェクトをビルドするための、より詳細なコードサンプルを紹介しています。そして 4. OMake言語の概要と構文 では実際にプログラミングするときに役立つ、いくつかの一例を紹介しています。 1.1 注意事項¶ OMakeマニュアル 日語訳 v1.3.2 このドキュメントは OMake バージョン0.9.8.6の マニュアル を日語訳したものです。原文のニュアンスを忠実に翻訳するよう心がけていますが、意図しない翻訳ミスやドキュメントの不備があるかもしれません。よって、 内容の正確さについて保証することはできません。 2. クイックスタート OMakeを利用するためのクイ

  • モダンな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++の開発環境の構築方法 - 考える人、コードを書く人
    yaotti
    yaotti 2010/08/01
  • 文字列とパイプ

    システム・プログラム 電子・情報工学系 新城 靖 <yas@is.tsukuba.ac.jp> このページは、次の URL にあります。 http://www.coins.tsukuba.ac.jp/~yas/coins/syspro-2004/2004-04-19 あるいは、次のページから手繰っていくこともできます。 http://www.coins.tsukuba.ac.jp/~yas/ http://www.is.tsukuba.ac.jp/~yas/index-j.html ■復習 プログラムのコンパイルからプロセスの生成までの道筋を理解する。 APIの重要性を理解する。 システムコールとライブラリの関係がわかる。 ファイルの扱いがわかる(open(),close(),read(),write())。 プロセスの扱いがわかる(fork(),execve(),exit(),wait(

    yaotti
    yaotti 2010/06/23
    pipe
  • http://www.g-ishihara.com/c_st_01.htm

    yaotti
    yaotti 2010/06/13
    struct size
  • 共有ライブラリをシステムに認識させるには

    ソースファイルで配布されているプログラムをインストールするにはで紹介した方法で、./configureを実行して環境設定を行う際に、次のようなエラーメッセージが表示されることがある。 $ ./configure (省略) checking for XINE-LIB version >= 0.9.9... no *** Could not run XINE test program, checking why... *** The test program compiled, but did not run. This usually means *** that the run-time linker is not finding XINE or finding the wrong *** version of XINE. If it is not finding XINE, you'll

    yaotti
    yaotti 2009/08/24
    soファイルのパス設定
  • サービス終了のお知らせ

    サービス終了のお知らせ いつもYahoo! JAPANのサービスをご利用いただき誠にありがとうございます。 お客様がアクセスされたサービスは日までにサービスを終了いたしました。 今後ともYahoo! JAPANのサービスをご愛顧くださいますよう、よろしくお願いいたします。

    yaotti
    yaotti 2009/07/22
  • 共用体 - Wikipedia

    共用体は、同一のメモリ領域に異なる型のデータを格納できる 共用体(きょうようたい、英: union)は、プログラミング言語におけるデータ型の一つで、同じメモリ領域を複数の型が共有する構造である。 例として、ある入力が数字の場合は数値として、そうでない場合は文字列のまま保持したいという場合を考える。この場合、数値用と文字列用の領域をそれぞれ用意するのが一つの解法だが、入力は数値か文字列のどちらか一方なので、片方しか使われず無駄が出る。そこで代わりに、格納用の領域を一つだけ用意して、これを数値である、文字列であると場合により解釈し分けることで領域の無駄が抑えられる。この「格納用の領域」こそが共用体である。 共用体から意味のある値を取り出すためには、中身のデータそのものに加えて「今、何の型のデータが入っているか」という情報(タグという)が必要となる。タグを付加情報として持ち、常に正しい型でデータ

    共用体 - Wikipedia
    yaotti
    yaotti 2009/04/17
    構造体を含む共用体については配置について特別な規定があり、共用体のメンバとして、先頭のメンバの型が同じである構造体を複数持つ場合は、それらの構造体の先頭メンバに限り、正確に重なり合うことが保証される。
  • http://www.cc.gatech.edu/classes/AY2004/cs4420_spring/project/Bplustree.c

    yaotti
    yaotti 2009/04/07
    implementation of B+ tree in C
  • Phase #07-2:コンパイルの過程(2)

    C.ヘッダファイルの取り込み 今までの例ではソースファイルは1つだけでしたが、複数個ソースファイルがあっても構いません。複数個のソースファイルの場合、例えばソースファイルAからソースファイルBに記述された関数 f を呼び出したい時があるかも知れません。これを正しくコンパイルするにはソースファイルAに関数 f のプロトタイプ宣言をしてあげないとコンパイラは関数を見つけられずエラーになります。そうするとソースファイルAとBの両方に関数 f のプロトタイプ宣言をしないといけないことになり修正するときに面倒ですし、第一分かりづらくなります。 このようなときに「ヘッダファイル」を使います。ヘッダファイルには一般的によくつかうマクロや他のソースファイルから呼び出される関数のプロトタイプ宣言などを記述します。実行文も記述できますが、極力ソースファイルにした方が良いでしょう。 ヘッダファイルは特別な形式も

    yaotti
    yaotti 2009/04/02
    lcc -DDEBUG test.c この起動オプションを付けると「#define DEBUG 1」という文がコンパイル時に自動的に挿入されます。
  • C言語での構造体を宣言するときにtypedefをつける人がいますがなぜつけるのでしょうか?? - C言語で構造体を宣言するときに、... - Yahoo!知恵袋

    C言語での構造体を宣言するときにtypedefをつける人がいますがなぜつけるのでしょうか?? C言語で構造体を宣言するときに、 typedef struct{ }○○○; などと書く人がいますが、なぜでしょうか? 真意がわかりません。

    C言語での構造体を宣言するときにtypedefをつける人がいますがなぜつけるのでしょうか?? - C言語で構造体を宣言するときに、... - Yahoo!知恵袋
    yaotti
    yaotti 2009/03/30
  • lsコマンドをハックしてみよう

    ヤフー株式会社は、2023年10月1日にLINEヤフー株式会社になりました。LINEヤフー株式会社の新しいブログはこちらです。LINEヤフー Tech Blog こんにちは、ショッピング事業部開発部の吉野です。 Yahoo!ショッピング開発部では新人エンジニア向けにコマンドのソースコードを読むことを奨励しています。 その初期の題材として、lsコマンドがよく挙げられます。 今回は「lsコマンドをハックしてみよう」と題し、lsコマンドについてお話しさせていただきます。 突然ですがエンジニアの皆さん、lsコマンドのソースコードを読んだことはありますか? 読んだことのない方はぜひ一度、目を通しておくことをおすすめします。 意外と知られていませんが、lsはcd,pwdなどのコマンドと違いシェルの組み込みコマンドではありません。 一口にlsと言っても、複数のソースコードが存在します。 代表的なのはGN

    lsコマンドをハックしてみよう
    yaotti
    yaotti 2009/03/27
  • 気合で理解する C 言語ポインタ入門(3)

    【前回のおさらい】 連続したメモリ領域を我々は勝手に「配列」と呼んでいる. コンピュータはメモリ上の「配列の先頭の番地」と「配列要素の先頭からの位置」を知ることができれば,配列要素へアクセスできる(はずだ). (私自身が高級言語万歳な人なので,)あんまりハードウェアよりのことは書きたくなかったのですが,こういうのは低レベル(よりハードウェアより)に考えた方が理解しやすいこともあるかと思いまして…… 一般の入門書ならば絶対にありないことです.が,多分これを読んでる人は Z80 アセンブラをそこそこ理解してる人だろうということで,こんな書き方をしています. 前回の記事: http://besky-works.spaces.live.com/blog/cns!555CF2E2F9E31C71!366.entry 【配列とポインタの関係】 前回の記事で,もしかすればピンと来た人もいるかもしれません

    気合で理解する C 言語ポインタ入門(3)
    yaotti
    yaotti 2009/01/20
    void piyo( int a[10] );
  • システムプログラム(第7週):

    システムプログラム(第7週): ネットワーク・プログラミング/サーバ側 筑波大学 システム情報工学研究科 コンピュータサイエンス専攻, 電子・情報工学系 新城 靖 <yas@is.tsukuba.ac.jp> このページは、次の URL にあります。 http://www.coins.tsukuba.ac.jp/~syspro/2008/No7.html あるいは、次のページから手繰っていくこともできます。 http://www.coins.tsukuba.ac.jp/~syspro/2008/ http://www.coins.tsukuba.ac.jp/~yas/ 今日の重要な話 TCP/IP サーバ側のプログラム tcp_acc_port() (socket()/listen()/accept()) (snprintf()) ServerSocket() (Java) 復習 TCP/

  • 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,

    yaotti
    yaotti 2008/12/23
  • システムプログラム(第7週):

    yaotti
    yaotti 2008/12/15
    forkの説明がわかりやすい