タグ

2015年1月6日のブックマーク (7件)

  • C11の仕様-それ以外の主な機能強化点

    「無名」という言葉は、構造体/unionの識別子(いわゆるタグ名)が省略されていること(リスト1の(1))、メンバー名が省略されていること(リスト1の(2))の両方を指している。メモリ上での配置は通常の構造体/unionと変わらない。つまり、リスト1のintegerメンバーとfloatingメンバーは同一のアドレスに配置される。無名union/構造体内のメンバーへは、その無名union/構造体をメンバーとして持つunion/構造体のメンバーと同じようにアクセスできる。(3)を見ると分かるとおり、dataTypeメンバーと同じようにして、integerメンバーにアクセスできていることが分かる。 総称選択(§6.5.1.1) 総称選択(Generic selection)は、型に応じて分岐する式である(リスト2)。

  • C11の仕様-脆弱性対応に関連する機能強化点

    C言語の最新仕様の情報にキャッチアップしよう。C11の仕様で強化された機能のうち、主に脆弱性対応に関連するものを紹介する。 ← 前回 連載 INDEX 次回 → 前回は、C99の仕様(ISO/IEC 9899:1999)について主だったところを紹介した。今回はC11の仕様(ISO/IEC 9899:2011)の中から主に脆弱性対応に関連するところを紹介したい(次回はそれ以外のC11の強化点を説明する)。 なお、C11の仕様書はANSIのeStandards storeからも購入できる。また、committee draftであれば、www.open-std.orgで閲覧可能だ。現在はこのリンクからダウンロード可能(ただし、詳細は確定した仕様とは異なる場合があるので注意されたい)。 概要 C11の仕様は2011年に規格化された。C11の特徴の1つとして、脆弱(ぜいじゃく)性対応に力が注がれてい

    hiroyukim
    hiroyukim 2015/01/06
  • コンピューター:C言語講座:マルチスレッドについて

    コンピューター:C言語講座:マルチスレッドについて マルチスレッドの特徴 一般的なサーバプログラムでは、多数のクライアントからの処理をできるだけリアルタイムに処理するために、何らかの形で並列処理を行うことが多いものです。たとえば、データベースサーバで、ある検索処理に時間がかかっている間ほかのクライアントが接続すらできない、という状態ではサーバとして失格でしょう。 並列処理を実現する方法としては、 ・プログラム自体を並列処理可能に記述する ・プロセスをもともと多数起動しておく ・fork()を使って子プロセスを起動するマルチプロセス処理 ・マルチスレッドを使用する などが考えられます。プログラム自体をリアルタイム性を考慮しながら記述するのはなかなか大変で、しかもソースが複雑になりメンテナンス性も問題が多くなりがちです。プロセスをもともと多数起動するのは簡単ですが、クライアントがどのプロセスに

  • C++ マルチスレッドプログラミング

    Ohotech 特盛 #10 ( http://ohotech.connpass.com/event/7517/ )で発表した資料です。Read less

    C++ マルチスレッドプログラミング
  • スレッドを使う前に知るべき C 言語の特性 - Qiita

    この話はレベル感が重要なので、僕の経歴と対象読者を説明します。 僕はプログラマの仕事を始めて10年、ここ5年ほどは組み込み機器向け GUI プログラムを PC 上でデバッグしています。対象プログラムは基的にシングルスレッドですが、ネットワーク通信などでマルチスレッドの機構を使うことがあり、スレッドの使い方を見よう見まねで覚えた中級者です。 そんな中級者から見て初心者は、スレッドの使い方を覚えた人ならみんなが勘付いているあることに気付いていないことがしばしばあります。 ここでは、マルチスレッドプログラミングの中級者から初心者に対して、スレッドを使う前に知るべきことを説明します。 説明に用いる環境は基的に Linux の pthreads です。たまに Win32 のスレッドにも言及します。 C 言語のスレッドは自分が見たいものしか見ない ここで、GUI プログラムでネットワーク通信だけは

    スレッドを使う前に知るべき C 言語の特性 - Qiita
    hiroyukim
    hiroyukim 2015/01/06
  • msgpack4zというmsgpackのScala用ライブラリを作った - xuwei-k's blog

    twitter上では何度かtweetしてたし、この前msgpackのjavaに関して書いたりしたけど msgpack javaについて やっと、ここ2ヶ月くらいの成果を一旦リリースしました。最初はそれほど色々作る予定なかったのに、気がついたらかなり色々できてしまいました。それらの概要や経緯を大雑把に解説します。 いつものように、これ書いてる2015-01-06時点のものなので、細かい部分は今後変わる可能性があります。 まず名前の由来ですが、最初適当にmsgpack4sとかにしようかと思ったけど、ぐぐったら一応その名前で既に存在したので、仕方なくhttpzのときと同じように、sではなくzつけてみただけです。あまり深い意味はありません。 さて、そしてまず とにかく色々できてしまったので、今回はリポジトリ自体を分けた リポジトリ自体が大量になったので、専用のorganization作ってみた と

    msgpack4zというmsgpackのScala用ライブラリを作った - xuwei-k's blog
  • Write You a Haskell ( Stephen Diehl )

    Building a modern functional compiler from first principles. Stephen Diehl In 2014 I wrote a short tutorial about building a small imperative language in Haskell that compiled into LLVM. I was extremely happy with the effect the tutorial seemed to have, and the warm response I got from so many people was very encouraging. I've done a great bit of thinking about what the most impactful topic I coul

    Write You a Haskell ( Stephen Diehl )