Folioscope

Archive for 2011

  • 主婦でも出来る!? 算術演算子を使わない算術演算

    算術演算子を使わない加算, 減算, そして乗算をご紹介いたします まず初めに, ポインタの演算について説明すると 通常の算術演算の場合, c = a + b とすると, cには, aとbが加算された結果が代入されます. さて, これがポインタのアドレス値になると少し違ってきます pが何かの型のポインタとしたとき, r = p + q の場合, 加算されるのではなく, pからqだけポインタが進められます. これはどういう事かというと, 例えばpがint型のポインタとしたとき, rにはint型の大き …

  • 部長をノイローゼにする方法

    開発部長がバグを取れなくてノイローゼにする方法を紹介します この前の記事をちょこっと応用します http://d.hatena.ne.jp/ibenza/20110504 まず部長にincludeさせるヘッダファイルを作成します 今回はスペースの都合上, 必要なメンバ関数しか実装していません classNeuroseDouble { public: NeuroseDouble operator+(const NeuroseDouble &d) { NeuroseDouble n; …

  • C言語の関数の定義

    本日O’REILLYのRUNNING LINUXを読んでいたら, ちょっと気になるC言語の関数の定義がありました 次のソースをご覧ください #include <stdio.h> int add(a, b) int a; int b; { return (a + b); } int main() { printf("1 + 2 = %d\n", add(1, 2)); return 0; } 実行結果 1 + 2 = 3 どうやら関数の仮引数の宣言をそれぞれ …

  • 悪質なプリプロセッサ

    C/C++では, コードのコンパイル前に, プリプロセッサという処理をします #defineとか#includeとかです このプリプロセッサの特徴をいかしたソースコードをご覧ください C/C++の予約語などの字句解析を行う以前に, プリプロセッサの処理が行われるので, doubleやcharといった予約語もお構いなしに, charにで置換されてしまいます #include <stdio.h>#define double char #define int char int main() …

  • C言語で(無理やり)private

    こんにちは C++でのprivateをCで実装できないかなと作ってみた. 構造体と同じサイズの構造体をもうひとつ用意する. ユーザはHoge構造体を使い, 構造体の設計者はデータを(HogePrivate*)に変換してアクセスする. 実用性はさておきC言語でのお遊戯でした #include <stdio.h> typedef struct __tagHogePrivate { int a; double b; } HogePrivate; typedef struct …

  • openSUSE11.4にビデオドライバを入れる

    openSUSE11.4が正式リリースされてから早2週間 ようやくAMDとNVIDIAのドライバのリポジトリが公開されました(されてました) これでようやくうちの環境でも新しいopenSUSEに触れます READMORE AMDドライバの場合 まずYaST2のソフトウェアリポジトリを選択します 次に[追加]ボタンを押して[URLの指定]を選択します そして適当なリポジトリ名をつけ, 次のURLを追加します http://www2.ati.com/suse/11.4 あとはソフトウェア管理を開く …

  • オサャレなWebページ切り替え その2

    あいかわらずjQueryが楽しくて 前回の記事でフェード効果でページ内への読み込みをしました 今回はそれをちょっと改良 READMORE 変更点は, aタグでリンクできるところと, その他もろもろです <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> <html lang="ja"> <head> <title>Load page …

  • オサャレなWebページ切り替え

    Webページをスマートかつお洒落な方法で切り替える方法を哲学 ページをローディングするのはもう古いかなと READMORE あらかじめHTML内に全てのページを埋め込んでおき, ボタンを押されると可視状態を切り替える方法がある.*1 しかしこの方法だと, ページのソース量が多くなり, また動的な情報には弱い 特にブログなどは, 全ページなんて読み込んでられない jQueryを使って, 画像をウニョンッ☆と表示するのを思い出した.*2 この場合, 画像を動的に読み込んでいる またjQueryでは, …

  • Qt Designerを使ってコンテキストメニューを編集する

    コンテキストメニューの項目をコードに書かずにQt Designerで作りたかったのですが未対応なようです なのでお下品な方法でQt Designerを使ってコンテキストメニューをデザインしたいと思います ここでは, Qtのヘルプを表示する”Help”と, アプリケーションを終了する”Exit”というアイテムを作成します READMORE デザインする プロジェクトツリーから「新しいファイルを追加...」を選択し, 「Qt デザイナ フォーム」 …

  • openSUSEでスクリーンキャスト

    LinuxでUstreamなどへデスクトップをストリーミングする方法です. openSUSE 11.3を使用しました Linux用のスクリーンキャストのソフトは少なく, どれももっさりしたりと満足できるものが無かったので, 少々手間ですが, vloopbackと呼ばれるモジュールを使ってストリーミングしたいと思います vloopbackは, データを入力して,仮想的なビデオデバイスとして出力してくれます なお配信までの手続きは, 次のサイトを参考にしました Linuxでデスクトップをライブ配信す …

Page 1 of 2 >