タグ

cに関するaiueo010101のブックマーク (10)

  • 紫月庵-C言語-10.ソケットプログラミング

    アドレス情報を格納する構造体 アドレス情報を格納する構造体の一般形はstruct sockaddrです。 まずは、struct sockaddrについて説明します。 struct sockaddrについて struct sockaddrとはアドレス情報を格納する構造体です。 この構造体を利用する際は、/usr/include/netinet/in.hを インクルードする必要があります。 /usr/include/netinet/in.hは、内部で /usr/include/bits/socket.hを読み込んでいます。 また、/usr/include/bits/socket.hは、内部で /usr/include/bits/sockaddr.hを読み込んでいます。 /usr/include/bits/sockaddr.hには次のマクロと新しい型が宣言されています。 #defin

  • How To Use the Google Template System

    Motivation A template system can be used to separate output formatting specifications, which govern the appearance and location of output text and data elements, from the executable logic which prepares the data and makes decisions about what appears in the output. Template systems lie along a continuum of power versus separation. "Powerful" constructs like variable assignment or conditional stat

    aiueo010101
    aiueo010101 2010/01/28
    google-ctemplate
  • 最新Cコンパイラーの最適化事情 - Radium Software

    State of the art C compiler optimization tricks, Felix von Leitner, Linux Kongress 2009. 最近のCコンパイラーの最適化能力についてまとめたプレゼンテーション。定数の扱いやインライン展開などの基的な項目から始まって,分岐の削除やベクトル化, SIMD 化など,最新のコンパイラーに搭載されている様々な機能について調べている。 この手の分岐の削除はほとんどのコンパイラーで有効らしい。 ベクトル化については gcc がだいぶ頑張っている印象。 「gcc は全プラットフォームにおいてビデオコーデックプログラマーより賢い」 これらの最適化が実際のコードでどのように機能するか気になって逆アセンブリコードを覗いてみる人も少なくないと思うけれど,それを代わりにやってくれた感じだ。この手の話題に興味がある人ならば,目を通

    最新Cコンパイラーの最適化事情 - Radium Software
  • C言語〜ゲームプログラミングの館〜

    ※ 更新履歴 ※ 2017/11/03 ・sp.8章追加 2017/10/11 ・配布しているプロジェクトをVisualStudio2017に更新(それにまつわる説明も更新) 2015/09/12 ・s.3章 Androidのようなボタンの作り方(C++) 追加 2013/09/02 ・VisualC++2012のプロジェクトを追加 2013/02/23 ・d3.5章追加 2013/02/20 ・d3.1章追加 ・d3.2章追加 ・d3.3章追加 ・d3.4章追加 2013/01/19 ・sp3章追加 ・sp4章追加 ・sp5章追加 ・sp6章追加 ・sp7章追加 2012/06/23 ・3.14章追加 2012/06/16 ・sp1節追加 ・sp2節追加 2012/02/11 ・d6節追加 2011/11/10 ・h11章追加 2011/10/31 ・s1章追加 ・s2章追加 2011/

  • Cプリプロセッサメタプログラミングで、文字列系泥沼関数型プログラミング - 簡潔なQ

    今年の文化祭で書いた記事です。 - C言語といえば、いやなイメージ、過去の遺産といった感じがあるかもしれません。 C言語のネガティブな側面というと、やはりポインタやメモリ管理などが難しい、ということが思いつくかもしれません。 しかし、C言語のポインタは表記に騙されやすいだけで、仕組み自体は全く難しくありません。 文法も、どこぞのPerlC++と比べたら屁でもない単純さです。 実のところ、仕様が煩雑で難しいのは、Cプリプロセッサなのであります。 普段からあまり複雑な使いかたをしないから気づかないかもしれませんが、Cプリプロセッサの置換処理は、欺瞞と裏切りに満ちた世界なのです。 これが進化するとテンプレートなどといったもっと面白いものになるのですが、今回はCプリプロセッサで計算をしちゃったりするところまで試しにやってみましょう。 (なお、GCCにより実験的に調べた記事なので、他のCコンパイラ

    Cプリプロセッサメタプログラミングで、文字列系泥沼関数型プログラミング - 簡潔なQ
  • AzaraC

    AzaraCは高速なCGIを効率よく作成するために開発されたC++用のテンプレートエンジンです。 新着情報 2006-10-27 AzaraC 0.3.0 同一キーに複数の値が割り当てられている入力を取得できるように変更 環境変数AZARAC_INCLUDE_PATHでテンプレートをコンパイルする際の-Iオプションを指定可能にした 環境変数AZARAC_LIBRARY_PATHでテンプレートをコンパイルする際の-Lオプションを指定可能にした 2006-10-16 AzaraC 0.2.0 POSTメソッドからの入力に対応 テンプレートエンジン AzaraCでは、Ruby on RailsPHPなどと同様に、Webページにプログラムを埋め込むことを可能にする「テンプレートエンジン」を提供します。テンプレートエンジンを利用することにより、デザインとロジックを分離したWebアプリケーションの作

  • Manpage of RE2C

    Section: User Commands (1) Updated: 25 May 2008 Index NAME re2c - convert regular expressions to C/C++ SYNOPSIS re2c [-bdefFghisuvVw1] [-o output] [-c [-t header]] file DESCRIPTION re2c is a preprocessor that generates C-based recognizers from regular expressions. The input to re2c consists of C/C++ source interleaved with comments of the form /*!re2c ... */ which contain scanner specifications.

    aiueo010101
    aiueo010101 2009/08/04
    convert regular expressions to C/C++
  • Big Sky :: C++で軽量Webサーバ書いた。

    書いたといっても結構前からあったのですが、いらん所を削ぎ落として軽量Webサーバとして仕立て上げました。 軽量とは言えど、CGIを使って結構色々動きます。 例えば、ソースアーカイブを解凍したらCGIがあって、apacheから見える場所にコピーして...とか面倒くさかったりしますよね。 おれは今すぐWebサーバを起動したいんだ!そして今いるディレクトリのファイルをWebサーバからサーブしたいんだー! って事ないですか?blogソフトウェアをダウンロードして今すぐ試したいけど、apacheインストールされてなかった...とか悲しすぎます。 今回紹介する"tinytinyhttpd"(tthttpd)はそんな、小さい様で大きな問題を解決出来るかもしれないソフトウェアです。 mattn's tinytinyhttpd at master - GitHub tiny tiny httpd http:

    Big Sky :: C++で軽量Webサーバ書いた。
  • C言語を使ったコンソールアプリケーションの作成 コマンドラインオプションの解析方法

    はじめに C#やVB.NETを用いることで手軽にGUIアプリケーションが作れるようになったとはいえ、ちょっとしたツールを書くときなどは、手軽さからC言語を使ったCUIのプログラムにしてしまうことが多いのではないかと思います。このようなCUIベースのツールを作るとき、よく使うのに面倒な処理としてコマンドラインオプション(以下オプション)の解析が挙げられます。 そこで稿では、PC-UNIX系の環境でよく使われるgetopt関数をC言語から使う様子を紹介しながら、同様の方法をWindows上で実現するための方法について説明します。 対象読者 C言語を理解していて、getopt関数を使ったオプションの解析方法を知りたいという方 なお、サンプルプログラムはすべてC言語で書かれており、Debian GNU/Linux + gcc 4.3でコンパイルと動作確認を行っています。また、Windows向けに

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