タグ

c++に関するrooshのブックマーク (17)

  • C言語のポインタはメモリを想像できれば理解できる | 100% Pure NEET

    最近、C言語のポインタは難しいって話をプライベートでして、そのときにした説明をまとめてみた。 コンピュータのメモリがどのようになっているか想像する これはHex Fiendというソフトを使ってあるファイルのHexダンプを見たものだけど、コンピュータのメモリも同じような構造になっているのでこれを使う。類似のソフトはHex Editorなどで検索すれば出てくるだろう。 コンピュータのメモリはこうしたずらずらと数値が記録されたマス目の連続のような構造をしている。Hex Editorなのでこれは16進数で表現されている。1バイトは16進数2桁で表現される。Hex Editorでは普通は1バイトごと、あるいは4バイトごとに区切って表示する。このエディタは一区画ごとに8桁の16進数があるので4バイトごと。 ポインタを使うのに重要なのはたぶん、こうしたメモリの内容を頭の中で思い浮かべることができることだ

  • 「UNIXをC++で分散OSに書き直せ」、幻に消えたBill Joyの野望とは - ITジャーナリスト星暁雄の"情報論"ノート

    UNIXの歴史にはある大きな転換点があり、そこには「もう一つの未来」の可能性が開けていました。この転換期に起こった出来事は「UNIX戦争」として知られていますが、その背景に「UNIXをC++で分散OSに書き直す」という野心的な計画があったことは、今ではほとんど語られることはありません。 私は、この一連の出来事の時期に、『日経エレクトロニクス』の記者としてUNIXの動向を追っていました。当時の出来事の概要を、取材者の視点から書き記しておきたいと思います。多くの読者にとって初耳の情報も含まれていると思います。 一連の出来事の発端は1987年に発表された、Sun、AT&T、Microsoftによる統合UNIXの発表です。この発表の前夜がどういう時代だったか、という話がまず必要でしょう。 統合前夜 1980年代後半は、コンピュータの歴史でも重要な時期でした。この時期、32ビット・マイクロプロセッサ

    「UNIXをC++で分散OSに書き直せ」、幻に消えたBill Joyの野望とは - ITジャーナリスト星暁雄の"情報論"ノート
    roosh
    roosh 2012/06/26
    分散OSとか・・・かっこええ
  • Cでのポインタの読み方

    Cでのポインタの読み方 Cのポインタの読み方は、ルールを知らないと摩訶不思議です。 ルールを覚えれば、 int (*p[5])[3]; char (*(*fp)(void))(int); なんてのも解読する事ができます。 大事な前程 ポインタを読む際には、「英語で読む」必要があります。 「え~、英語~」 と思う方もいるかもしれませんが、逆に日語で読む方が大変です。 基ルール ルール 後置演算子が優先。 関数の() 配列の[] 前置はあとで。 要は、「後ろに何かあったら、後ろが優先」です。 演算子の英語での読み方 * pointer to ... () function returning ... [] array of ... Lesson 1 まず、演算子が単独で出てくる場合です。 Lesson 1-1 pointer to ... int *p; これは、まずpを見ましょう。 i

  • Big Sky :: 何も見ずにC++でjsonパーサが書けるか試してみた。

    以前、kazuhoさんが書いたpicojsonの紹介をさせて頂いたのですが、あれから何度も使わせて頂いていてkazuhoさんのいる方角には足を向けて寝られないmattnです。 Big Sky :: ヘッダファイルだけでC++から使えるJSONパーサ「picojson」が凄い! kazuhoさんがやってくれました。ずいぶん前からjsonをC++でパース(SAXじゃなくてDOM)するのに小さいライブラリないかなーと思ってました。個人的にはjson-cというのを使ってたのですが... http://mattn.kaoriya.net/software/lang/c/20090702153947.htm なんど見ても綺麗なコードです。 で、先日ちょっと出張があって新幹線に乗る事があり、ちょっとルールを決めて僕にも同じ物が書けるか試してみました。 以下ルール。 picojson相当のjsonパーサを

    Big Sky :: 何も見ずにC++でjsonパーサが書けるか試してみた。
  • Kuronuko.com is for sale | HugeDomains

    Make 24 monthly payments Pay 0% interest Start using the domain today. See details

    Kuronuko.com is for sale | HugeDomains
  • C++入門

    目指せプログラマー!にようこそ。 当サイトはこちらに引っ越しました。 お手数をおかけしますが、上記サイトへご移動くださいませ。

  • フェイスブックの作ったオープンソース色々:phpspot開発日誌

    公開初日に早速フェイスブックの映画、ソーシャルネットワークを見てきました。 サービスを作ってる人は、\1,800はらうだけでやる気を200%ぐらいにしてくれる映画だと思うので費用対効果は安いと思います。 映画の中で、ハーバード大学は2時間で22000アクセスのトラフィックを集めただけで落ちちゃうの?とかナップスターの作者さん遊び上手すぎじゃない?とか、新機能の実装に家かえってから1、2分とか早すぎない?等の、ツッコミどころなんかも楽しめます。 映画の中ではコーディングに関することは殆ど出てこなかったわけなんですが、膨大なトラフィックをさばくためにfacebook自体、多くのオープンソースを公開しているのでdevelopers.facebook.comから紹介してみます。 もうすぐ6億人に届くほどのユーザを扱うためには、想像を絶するインフラや高速化、サーバ間連携の仕組みが必要になるわけですが

  • C++0x 標準ライブラリ完全解説 まとめ - 野良C++erの雑記帳

    No.00 Introduction (2011-01-07 更新) No.01 namespace rel_ops, utility (2011-01-07 更新) No.02 std::move, utiliy (2011-01-16 更新) No.03 std::move_if_noexcept, utiliy (2011-01-17 更新) No.04 std::swap, utiliy (次回予定)

    C++0x 標準ライブラリ完全解説 まとめ - 野良C++erの雑記帳
  • Yabuki Taro’s Home Page

    自分のコードを出力するプログラム 「プログラミング言語なんて何でも同じ」っていうのはチューリングの意味では正しいのかもしれないけど。 数年前、スタンフォード大学の学生たちは、自分自身を印刷する最短のFORTRANプログラムを見つけようと張り切ったこともあります。(中略)こうしたことは時間の浪費ではないと私は考えます。さきほど引用したベンサムも、こうした遊びのもつ「有用性」を肯定しております。彼は次のように述べています:「それどころか、これ以上に明白な有用性は何もない。もし喜びの源となるのでなければ、有用性の特徴は何に基づいたらよいのであろうか。」—Donald E. Knuth, ACM Turing Award Lecture アイディア プログラムは2つの部分A,Bからなる。Aのコードを<A>、Bのコードを<B>とする。 Aは<B>を記録する。 BはAの記録から<B>を知り、 <B>を

  • ニコニココメントサーバーにおけるメモリ使用量増大問題の調査と対策 - ドワンゴ 研究開発ブログ

    はじめに コメントサーバーは、ニコニコ関連サービスのコメントを司るサーバーである。稿は、ニコニコ広場で起こったコメントサーバーメモリ使用量増大問題について、我々コメントサーバー担当が行った調査と対策のまとめである。 今回のメモリ増大問題の解決にあたり、「仮説を立てる + 計測する→修正する→確認する」というパターンを繰り返した。このパターンは、ソフトウェアの様々な問題を調査するのに適用できる、基パターンである。 コメントサーバー概要 コメントサーバーについて簡単に概説する。 コメントサーバーはニコニコ関連サービスのコメントを管理するサーバーである。基的な機能は、新しいコメントの保存、およびコメントの出力である。ニコニコサービスのユーザーがコメントサーバーに直接触れることはなく、ニコニコのプレイヤーがコメントサーバーと直接やりとりを行う。ニコニコ動画の例でいうと、コメントサーバーを使用

    roosh
    roosh 2010/10/06
    計測と修正とプログラミング言語と知識を的確細かく使いこなしててかっこいい、こうなりたいなぁ
  • 開発メモ: 50行のC++コードでWebサーバを実装する

    「Kyoto Tycoonの設計 その四」改め、50行でWebサーバを書く方法を解説する。前回実装した「多重I/Oマルチスレッド汎用TCPサーバ」の上にHTTPの処理を行う層をつけて、「多重I/Oマルチスレッド汎用HTTPサーバ」を司るクラスを実装してみたので、それを使ってちょちょいとやる。 URLクラス HTTPと言えばURLが使えないと意味がない。URLは単なる文字列として扱ってもよいのだが、様々なシーンで分解や加工が必要になり、その処理はなにげに複雑で面倒なので、予めクラスとして導出しておいた方がよいだろう。 class URL { public: // 文字列のURLを解析して内部構造を作る void set_expression(const std::string& expr); // スキーム要素を設定する void set_scheme(const std::string&

  • C++の便利ツール・ライブラリ - DO++

    フルタイムで働きはじめて4ヶ月。 いろんなことがありました。 今日はインターンが来ているということもあり日頃のC++コーディングライフの中で大変重用しているツールを紹介します。といってもどれも有名なツールでググれば解説がでてくるとは思いますので、一言ずつだけ紹介してみます。みなさんも何かよさげなライブラリ・ツールがありましたら教えてください。 - valgrind/callgrind/cachegrind プログラムの実行結果を解析するツール群。まぁ、王道であえて紹介する必要はないかもしいませんが.。valgrindはプログラムのどこかでメモリが漏れているかどうかのチェックに使います.コードのどの部分で確保した領域がどこで漏れているかまで追跡することができます valgrind --leak-check=full command プログラムのどのが計算量的にボトルネックになっているかを調べ

    C++の便利ツール・ライブラリ - DO++
  • ビットを数える・探すアルゴリズム

    作成日:2004.05.04 修正日:2012.09.01 このページは 2003年の9/11、9/28 の日記をまとめて作成。 はじめに PowerPC 系や Alpha などには population count と呼ばれるレジスタ中の立っているビット数を数える命令が実装されている。 集合演算を行うライブラリを実装したい場合などに重宝しそうな命令である。 職場でこの population count 命令について話をしているうちにビットカウント操作をハードウェアで実装するのは得なのか?という点が議論になった。 CPU の設計をできるだけシンプルにするためには、複雑で使用頻度の低い命令は極力減らした方がよい。 例えば SPARC は命令セット中にビットカウント演算があるが、CPU 内には実装しないという方針をとっている(population 命令を実行すると不正命令例外が発生し、それを

  • 龍神録プログラミングの館

    管理人の新作ゲーム「四聖龍神録2」公開開始! ※現在はより適切な設計手法で紹介した龍神録2プログラミングの館があります。 ============================================================================ 龍神録プログラミングの館では、誰にでも龍神録(東方のようなSTG)が作れるような解説を行っています。 難しい構文は使わず、初心者にもわかり易い構文のみで紹介しているので 基的なC言語の知識と、DXライブラリの知識さえあれば、誰にでも龍神録は作れます! ゲームプログラミングの館でDXライブラリに慣れたら、今度は格的なゲームを作ってみましょう! ↓ゲーム紹介動画↓ ご存じない方は是非四聖龍神録Plusを遊んでみて下さい! 全ての章のプロジェクトを一括ダウンロードする場合はこちらをクリック ※ 配布しているプロジェクト

  • yebo blog: Conficker-Cの詳細な解析

    2009/03/22 Conficker-Cの詳細な解析 SRI International マルウェア危機管理センターのPhillip Porras氏、Hassen Saidi氏、Vinod Yegneswaren氏らが猛威を振るうConficker-C の詳細な解析結果を公表した。Confickerの拡散やアンチウィルス製品からの防御、ドメイン生成のアルゴリズム、ワームに組み込まれているP2Pのメカニズム、ネットワークへの影響などを詳細に調べている。 投稿者 zubora 投稿時間 05:59 ラベル: Microsoft, Security 0 コメント: コメントを投稿

    roosh
    roosh 2009/03/24
    Conficker
  • Confickerワームは4月1日に活動開始? | スラド セキュリティ

    ストーリー by hayakawa 2009年03月24日 15時21分 全世界を巻き込んだ、壮大なエイプリルフールネタだったらどうしよう…… 部門より 世界で1200万のマシンに感染していると推定され、猛威を振るっているConfickerワームだが、その目的は完全には解明されておらず様々な憶測を呼んでいる(家/.記事)。 最近出現した亜種Conficker.cでは、感染したコンピュータはサーバ及びクライアント両方の役割を担うことが可能で、双方向にファイルを共有できるため、「FreenetのようなP2Pシステムを構築するのでは」と見る者もいる。また、カリフォルニア大学サンディエゴ校のStefan Savage氏は、感染したマシンのデータを検索できる「ダークなGoogle」の可能性をみているという。 犯罪組織が感染したマシンから必要なデータを取得し、悪用するためのマルウェアは既に出回ってい

  • http://japanese.osstrans.net/software/pircbotcpp.html

    Warning! OssTrans.net has expired. If this is your domain name you must renew it immediately before it is deleted and permanently removed from your account. To renew this domain name visit http://www.NameBright.com

    roosh
    roosh 2009/03/24
  • 1