タグ

programmingとCに関するkenjiro_nのブックマーク (29)

  • 転送中

    リダイレクトします 以前ここにあったブログは、現在 http://news.pineapple.cc/ にあります。 リダイレクトしますか。

    kenjiro_n
    kenjiro_n 2010/02/04
    id:entry:19080927で紹介されていた「特殊なC言語入門」なるものを連載しているが、デザインが目に優しくないのもある上カテゴリわけがないので読みにくい。/id:entry:25826836に別途転載された。
  • 特殊なC言語入門 | quaternionの日記 | スラド

    完成したら、順番どおりにポイントするようなページをどこかに作ってください。Blogが逆順になるのはやむを得ませんが、連続表示しておいて真ん中に違う記事があったりすると、「あぁ、これは関係ないんだ」とスキップした拍子に、短いものもスキップしてしまう。「3」とか。各記事ごとに表示するリンク集があれば、タブで全部一気に開いて、順番に読む、と言う手が使える。 i++が駄目だと言う割には ++i を使っている。 i+=1; と書くべきなら、++i だって i+=1 にするべきじゃない?特に「8」の例は i++ だろうが ++i だろうが関係ないんだし。 逆に言おう。i++ や ++i は止めるべきではない。それらは 「アセンブラを教える時に」大事な概念だ(つーか論理回路を理解するときに大事)。 C言語に限らないが、あるプログラミング言語は、そのプログラミング言語だけを教える事だけしか念頭におかない、

    kenjiro_n
    kenjiro_n 2010/02/04
    id:entry:18541749の紹介。むしろアセンブラをはじめとした他言語を覚えるためのきっかけ作りが大切という奥山氏のコメントが主。
  • やる夫と学ぶプログラミング言語 C | スラド デベロッパー

    AA(アスキーアート)を用いて歴史上の出来事・ゲームの内容・調理法など様々な内容をストーリー形式で紹介するやる夫シリーズに、プログラミング言語Cを紹介するスレッドが出ていたようだ(まとめサイト第1話、第2話、第3話、最終話:プログラムの内容については第2話から)。 内容はprintf/scanfを使った標準入出力、if/while、switch、関数はmain()のみなどポインタ以前のC言語について解説したもの。main()のみだが、初心者に変数がグローバル変数だけと思わせるような筋、stdio.hをインクルードする理由を解説しない点についてはタレこみ人はどうかと思うが、C言語のとっかかりとしてコミカル(若干)に解説してるものとしては面白い試みだと思う。

    kenjiro_n
    kenjiro_n 2010/02/01
    どこかでid:entry:18344619を見たことがあると思ったがこれか。はてブで話題になったのが年明け後というのもちょっと意外ではあるけど。ここでは内容に即してタイトルを「やる夫と~」と修正している。
  • 組み込みソフトウェアの開発手順を理解する ―― C言語でマイコンを制御するために不可欠

    ここでは,組み込みシステムで用いられるソフトウェアの開発環境についての基礎を説明します.また,C言語による開発のターゲットとなるマイコンの場合を具体的に説明します.(編集部) 組み込み機器のマイコンを動作させるためのソフトウェアは,組み込みソフトウェアと呼ばれています.組み込みソフトウェアの開発の方法には,特徴的な点があります. パソコンで動作するソフトウェアは,パソコンで開発されるのが一般的です.開発に使用しているパソコン上で,動作も確認できます.また,一つの開発ツールで,さまざま用途のソフトウェアを開発できます. これに対し,組み込みシステムのハードウェアでは,ほとんどの場合,開発ツールを動作させることはできません.開発にはパソコンを利用できますが,開発されたソフトウェアは,パソコンから設計対象となる機器に転送しなければ実行できません.設計対象のハードウェアは,開発のたびに異なるのが普

  • やる夫ブログ やる夫で学ぶプログラミングC言語入門 その1

    2 : ◆yLAhgX0PfU :09/12/26 22:07:50 ID:P6tTRkg5 ┏           ┓ C言語 授業中 ┗           ┛ ∧∧ l: _つ/      /;:’ ∧_∧┌ _||/ (,,゚Д゚).⊃ /      / l::゚/:(`   ,,/:|  ̄||.,o ∧_∧ . l:_つ/      / l//:’と   ||  :| .o'  ̄o , ・∀・) ⊃/       /;:’ ∧_∧┌ _||/ l: _つ/        / l:’/:(`   ,,/:|  ̄||.,o ,ヽ⊃ ./        / l//:’と   ||  :| .o'                     ∧∧ ⊃ .つ / ): /       /;:’ ∧_∧┌ _||/                      .,(Д゚ ,,)_┐ / /    

    kenjiro_n
    kenjiro_n 2010/01/06
    想定読者がこのやる夫とやらない夫みたく単位のため嫌々やっている学生みたいで色々端折っているのは仕方ない。仕事や趣味で覚えようという人には別に本を読んで欲しい。スラドがid:entry:18223505で紹介。
  • gccを用いたCの共有ライブラリの作り方 - シリコンの谷のゾンビ

    ゆとりなもので,ついこないだまで動的リンクと静的リンクの違いがわかっていなかった.動的リンクというのが理解できた頃,そっかユーティリティライブラリは自分で共有ライブラリ作ってしまえばいいんだ,というごく当たり前のことが理解できた. UNIXをさわりはじめていた初期の頃,mecab.soのシンボリックが〜〜という用なハマりがあったのだけれど,あれは要するに実行時に共有ファイルへのパスを指定してあげればよかっただけのこと. わかると当たり前だけれど,わからないと「何がわからないのかわからない」状態に落ち込むなぁ,と改めて思いました. (幸いなことに,僕の周りには「ゆとり乙ww」と指導してくれる方々がいるので認識できるようになるのですが,少なくとも大学(院)時代はそうでなかったわけで,ゆとりスパイラルの恐ろしさを体感した気がしています.) というわけで自分用共有ライブラリの作り方をきちんと理解で

    gccを用いたCの共有ライブラリの作り方 - シリコンの谷のゾンビ
    kenjiro_n
    kenjiro_n 2009/12/10
    WindowsのDLLよりずっと楽だなぁ。そのかわりLD_LIBRARY_PATHの問題はあるけど。
  • プログラミング言語Cについて知ろう

    プログラミング言語の基となる「C」。正しい文法や作法を身に付けよう。Cには確かに学ぶだけの価値がある(編集部) プログラミング言語Cは開発の仕事に役立つ人気のあるプログラミング言語です。 この連載では、Cでのソフトウェア開発をこれから始めようという方や、使った経験はあるが勉強し直したいという方のために、基をきちんと押さえながら勉強できるような解説をしていきます。 なるべく正しい文法や作法を身に付けていただくためにJIS規格を基に解説しますが、それだけにこだわらず実際の開発で役に立つことを分かりやすくお伝えしていきます。 Cの成り立ちと規格 まずは、Cの成り立ちと規格について知っておきましょう。ちょっと堅苦しい感じがするかもしれませんが、歴史を知っているとなぜこういう書き方をするのか、こういった機能があるのかといったことが分かります。また、規格を知っているとプログラミングをしていて何か

    プログラミング言語Cについて知ろう
  • vsnprintfを使えば安心というものでもないという例:プログラマー社長のブログ:オルタナティブ・ブログ

    今日はバリバリC言語の話題です。C言語はバッファオーバーフローの問題が発生しやすく、初心者は使うな、とか、そもそも今時使うな、とか言われていますが、性能要求が高い場合や組み込みなど環境制限が厳しい場合などにはまだまだ大活躍です。さすがにWEBシステムの大規模なものなどで使うケースはほとんどないでしょうけれど。 そんなC言語も、一応バッファオーバーフローしにくいようなライブラリを使うようにいわれています。たとえば、sprintf(),vsprintf()などの代わりに、snprintf(),vsnprintf()を使うという感じです。'n'がつく方は、格納先のサイズを指定できるのでバッファオーバーフローを防ぎやすいのです。 ところが、あるシステムでこの部分でメモリーアクセス違反で死ぬ現象が発生しました。デバッガで確認すると、vsnprintf()で死んでます。格納先バッファのサイズなどは問題

    vsnprintfを使えば安心というものでもないという例:プログラマー社長のブログ:オルタナティブ・ブログ
  • Visual C++ 2005におけるscanf()に対する警告を抑制する方法

    以前、「scanf()のワーニング(Visual C++ 2005)」で書いたことなんですが、なんか微妙にヒット数があるみたいなので適当に書き直してみる。 偶には微妙にためになることも書いておかないとね・・・ 例えば次のような簡単なコードを書いてみたとします。 /****************************************************************************** * scanf_example.c *****************************************************************************/ #include <stdio.h> int main( void ) { int i; printf( "整数値を入力してください > " ); scanf( "%d", &i );