タグ

C言語に関するaritekuのブックマーク (16)

  • OMake つかったらC言語でプログラム書く手間がバカみたいに減った - 日記を書く[・ _ゝ・]はやみずさん

    OMakeすごい。OMakeはマジですごい。 OMakeはGNU makeの代替品みたいなものなんだけど、正直なところこのツールの強力さはGNU makeと比べると失礼なくらいすごい。これのおかげで、「コード修正→ビルド→デバッグ→コード修正→・・・」のループの、ビルドにあたる作業がほぼ消え去った。 ファイルの依存関係の解析がとにかくすごい。よくあるユースケースなんかの場合、最小限の手間でほぼ完璧に依存関係を網羅して、よしなにビルドしてくれる。 とりあえず、はやみずが実際に使ってみたケースを例にとってそのすごさの一端を紹介しようと思う。 case study 論より証拠ということで、自分が OMake を試しにつかってみたケースを紹介する。C言語でスタティックライブラリを作っていて、それに加えて簡単なテストプログラムを書いている。 /include/ 以下にヘッダファイルが全部ある /sr

    OMake つかったらC言語でプログラム書く手間がバカみたいに減った - 日記を書く[・ _ゝ・]はやみずさん
  • C/C++セキュアコーディング入門一覧

    CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

    C/C++セキュアコーディング入門一覧
  • while(1){LOVE++;}を最適化 - duost

    最近ツイッターで "while(1){LOVE++}"と書き込まれてる指輪があって、 そのソースは最適化でLOVEが消えてただの無限ループになる云々という話があったので検証。 http://togetter.com/li/144840 用意したソースはこちら。 int main() { int LOVE = 0; while(1){LOVE++;} } それじゃアセンブラを見てみましょ。 まずは最適化抜き。 gcc -O0 -s hoge.c .file "hoge.c" .text .globl main .type main, @function main: pushl %ebp movl %esp, %ebp subl $16, %esp movl $0, -4(%ebp) ;LOVE=0 .L2: addl $1, -4(%ebp) ;LOVE++ jmp .L2 ;JUMP TO

    while(1){LOVE++;}を最適化 - duost
  • acceptシステムコール

    3.7 acceptシステムコール TCPサーバにおいて、クライアントと接続を確立するのがacceptシステムコールです。 このシステムコールはlistenシステムコールと同様、TCPサーバのみ必要となります。 acceptシステムコールは成功した場合に新しいソケットファイルディスクリプターを返し、以後そのクライアントとは新しいソケットディスクリプターを使って通信することになります。 なお、acceptシステムコールはクライアントからの接続があるまで返りません。 <書式> #include <sys/types.h> #include <sys/socket.h> int accept(int socket, struct sockaddr *addr, socklen_t *addrlen ); <引数> 第一引数の"socket"には、listenを行っていたソケットの

    ariteku
    ariteku 2011/05/19
    Acceptシステムコール
  • sockaddr構造体

    sa_family アドレスファミリー(通常はAF_INET(2)を指定) sa_data ポート番号、IPアドレスを格納

  • サービス終了のお知らせ

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

  • C++, pthread: スレッドの同期と排他制御 – MutexとCondition Variable

    以前、Boostライブラリを用いたスレッドの同期と排他制御を取り上げましたが、今記事はそれのpthreadバージョンです(似せただけです)。pthreadライブラリ自体はC言語から扱えますが、今回はstaticなメンバ関数を別スレッドで動かす練習も兼ねてC++で書いてみました。 ソースコード #include <iostream> using namespace std; #include <stdio.h> #include <pthread.h> #define BUFFER_NUM 100 #define WAIT_NUM 1000000 #define LOOP_NUM 100 class HandleData { public: HandleData() : index_(0), channel_array_len_(sizeof(channel_array_)/sizeof(c

    C++, pthread: スレッドの同期と排他制御 – MutexとCondition Variable
  • https://oshiete.goo.ne.jp/qa/2077036.html

  • UTF-8 バリエーション

  • 文字列の分割(UTF8)

    [戻る] テレスコ 2007/02/20(火) 15:21:35 <60.45.202.171> 先ほど似たような質問を投稿した者ですが、 また、恐縮ですが質問させて下さい。 文字コードがUTF8の文字列を指定された文字数で 分割したいのですが、巧い方法は無いでしょうか? //これを(英数字は半角) char str[]="3バイト文字と1byte文字が混ざってます"; //こうしたい char A[18], B[18], C[18], D[18]; A="3バイト文字 B="と1byte C="文字が混ざっ" D="てます" よろしく、おねがいいたします。 Blue 2007/02/20(火) 16:12:07 <192.51.44.48> 文字数であれば、wchar_t型配列に変換して、ぶった切れば簡単でしょう。 まず、 1.MultiByteToWi

  • ASCIIコード表

    ASCIIコード表 10進16進文字 0 0x00 NUL(null文字) 1 0x01 SOH(ヘッダ開始) 2 0x02 STX(テキスト開始) 3 0x03 ETX(テキスト終了) 4 0x04 EOT(転送終了) 5 0x05 ENQ(照会) 6 0x06 ACK(受信OK) 7 0x07 BEL(警告) 8 0x08 BS(後退) 9 0x09 HT(水平タブ) 10 0x0a LF(改行) 11 0x0b VT(垂直タブ) 12 0x0c FF(改頁) 13 0x0d CR(復帰) 14 0x0e SO(シフトアウト) 15 0x0f SI(シフトイン) 16 0x10 DLE(データリンクエスケープ) 17 0x11 DC1(装置制御1) 18 0x12 DC2(装置制御2) 19 0x13 DC3(装置制御3) 20 0x14 DC4(装置制御4) 21 0x15 NAK(

  • サービス終了のお知らせ

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

  • C++と Pthreads でミニマルなHTTPサーバを書く - いやなブログ

    C++と Pthreads でミニマルなHTTPサーバを書く 『UNIXネットワークプログラミング』を読んでいると、自分でも何かネットワーク系の小さなプログラムを書いてみたくなりました。そこで、ミニマルなHTTPサーバを C++と Pthreads で書いてみました。 同じ著者の「詳解UNIXプログラミング」もそうだったように、今回のもほとんどすべてのページに、重要なことが書かれています(最後のほうのXTIの部分は例外かもしれませんが)。 たとえば、27章ではネットワークサーバの実装として、次の設計方針がそれぞれ検討され、実際のコード付きで解説されています。 クライアントごとに fork 事前に fork - 各プロセスで accept 事前に fork - ファイルロックで accept を保護 事前に fork - Mutex ロックで accept を保護 (PTHREAD_PRO

  • とある技術の私的目録 - GCCエラー

  • C言語の研究・演習編1

    <演習編> C言語の研究・演習編1 前回まで一生懸命C言語の文法や標準ライブラリを学んできた。長い道のりであった.... これからは、プログラムを作成する上で知っておかねばならないアルゴリズムについて、例題を多用しながら研究して行こう。 第1章 文字列の操作 C言語では文字列の取り扱いは重要なテーマである。 これは標準ライブラリ<string.h>がかなり充実していることからもうかがい知ることができるだろう。 それでも、やはり荒削りなC言語である。BASICなどのように、便利で多種多彩な関数はない。 必要な関数は標準ライブラリをもとにして自分で作って行くしかない。それがまた楽しいところでもある。 1 文字列の探索 たとえば、長い文字列から特定の文字列を検索するにはどうしたらいいだろう。標準関数strcmpやstrncmpはそのままでは使えない。 長い文字列a[n]から文字列b[m]を探す場

  • @camelmasaの開発日記

    カントリーマアム 不二家 カントリーマアム(バニラ&ココア) 20枚 出版社/メーカー: 不二家 発売日: 2019/01/29 メディア: 品&飲料 この商品を含むブログを見る https://amzn.to/31UHgHz 異体字が名前に含まれてしまっていて、困るときに使う。 https://github.com/camelmasa/itaiji [追記] 現段階では前職に迷惑がかかる恐れがあったので非公開にしました。 Starをして下さったみなさんありがとうございました。 全く別のプロダクトになったと思った時再度公開したいと思います。 [以下は元の記事] 久しぶりに記事を書いたので現状を報告すると、先日の1月10日付でIncrementsを退社しました。 今はインディーズゲームして遊んでます。PZとFTL楽しいです。 そんなことはどうでも良くて。 先日から数人で作業をするため、Pi

    @camelmasaの開発日記
  • 1