タグ

プログラミングとc言語に関するrooshのブックマーク (5)

  • 学生時代、UNIXでC言語を独学していた頃。 ちょっとした事(たしかグローバ..

    学生時代、UNIXでC言語を独学していた頃。 ちょっとした事(たしかグローバル変数とローカル変数の挙動の違いとか、そんな事だったと思う)を試してみようと思って、20行くらいのプログラムを作ったんだ。 でも、動かないの。 どんな短いプログラムでも意図しない挙動をしてしまうことはあるものだが、そんなレベルの話ではない。 ただ、計算した結果を画面に出すだけのつもりなのに、何も表示されないんだ。 で、少しずつコメントアウトしていったのに、それでも何も表示されない。 しまいには、"A" って画面に出すだけのコードになったのに、それでも何も表示されないんだ。 (この日記の言及先を見れば、ネタは一目瞭然なんだろうけど) で、もう一別のコードを test2.c という名前で作ったら、ちゃんと "A" と表示された。 一番始めに作ったコードも、すんなり動いた。 そうさ。最初のコードは test.c という

    学生時代、UNIXでC言語を独学していた頃。 ちょっとした事(たしかグローバ..
    roosh
    roosh 2018/07/11
    すき。あの頃はコンパイルするだけで面白み感じてたなぁ。
  • 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

  • Cプログラミング診断室 - 藤原博文

    はじめに 開院準備 昔むかし/ レベル差/ 教育/ ネットワーク/ 情報集め/ 隠すことについて/ プログラムコンテスト/ ドキュメント/ 楽するように/ 手抜きと下手の違い/ 開院 第1部 外来 第1章 普通の初心者 最初から充実した(!?)プログラムが登場 関数を短くし、コメントを改善する 上手になる秘訣/ プログラムの紹介/ 何だ、このプログラムは!!/ 短くするには/ コメントについて/ 無駄な努力をやめよう/ 名前/ 気になる個所/ 修正プログラム/ 課題/ まとめ 第2章 これでもプロ 売りものであるにもかかわらず、超きたない! 構造的な欠陥の指摘〜引数、ポインタの活用 プログラムの紹介/ 「超」基的問題点/ 関数分解/ 構造的欠陥/ 引数を使おう/ ポインタ/ その他/ まとめ(修正プログラム) 第3章 上司が問題 まさに驚異的なプログラムの見というべき 内容の修正から、

  • Phinloda is HERE

    (今週(?)の格言) 一見豪華主義 C言語 初級C言語Q&A (2003-06-06) C MAGAZINEに連載した Q&A のWWW版。 フィンローダのあっぱれご意見番 (1999-05-27) C MAGAZINEに連載していた無節操コラム。抜粋。 第81(78)回「機種依存文字」 「Cプログラミングの秘訣」 (1998-09-17) C MAGAZINE 1992年4月号に掲載された特集記事です。 プログラマーズフォーラム No.274「読ませる文章 (1)」 , No.275「読ませる文章 (2)」 , No.276「読ませる文章 (3)」 追加 その他 CG(2007-01-15) etc.(2003-01-09) 当の裏ページ(絶賛放置中) 裏の裏ページ Phinloda のもう裏だか表だか… 裏ご意見番 Phinloda のいつか聴いた曲 Phinlodaのいつか読んだ

  • ビットを数える・探すアルゴリズム

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

  • 1