Photo by Tnarik Innael
プログラミングをこれから学ぼうとしている方や、これから研修や実務に入る新人エンジニアの皆さんの中には「C言語を学習したい」という方もいらっしゃるかと思います。
C言語は、プログラミング言語の中でも群を抜いて処理速度が早く、一般的なシステムの開発だけでなく、OSやハードウェアの開発にも向いており、Windows、LinuxといったOSの開発にも使われています。
基礎的なプログラミング言語として人気が高く、大学などの情報系学部の授業でも取り上げられることの多いC言語ですが、習得するのは「難しい」「ハードルが高い」と思われがちです。
C言語のハードルを上げている要因の一つは、「ポインタ」の存在かと思います。
ポインタとは、メモリの場所であるアドレスを記憶するための変数のことなんですが、初心者にそれだけ言われても何のこっちゃという感じですよね。
そこで今回は、C言語初心者がつまづきがちなポインタについて学べるコンテンツを6件ご紹介します。
■今度こそC言語のポインタを克服できるコンテンツ
◆苦しんで覚えるC言語
苦しんでとありますが、「市販書籍と同等以上の完成度」とある通り(というか書籍化もされています)、C言語について初心者向けに本当に丁寧に解説されているサイトです。ポインタについても詳しい解説と練習問題があります。
書籍版
- 作者: MMGames
- 出版社/メーカー: 秀和システム
- 発売日: 2011/06/24
- メディア: 単行本
- 購入: 3人 クリック: 600回
- この商品を含むブログ (16件) を見る
◆手を動かしてさくさく理解する C言語/C++ ポインタ入門
ポインタの演習問題がたくさん公開されているので、問題を解きながら身につけたい人におすすめです。
◆C言語ポインタ完全制覇
- 作者: 前橋和弥
- 出版社/メーカー: 技術評論社
- 発売日: 2017/12/07
- メディア: 大型本
- この商品を含むブログを見る
◆詳解C言語 ポインタ完全攻略
- 作者: 柴田望洋
- 出版社/メーカー: ソフトバンククリエイティブ
- 発売日: 2009/06/17
- メディア: 単行本
- 購入: 5人 クリック: 14回
- この商品を含むブログ (4件) を見る
◆詳説 Cポインタ
- 作者: Richard Reese,菊池彰
- 出版社/メーカー: オライリージャパン
- 発売日: 2013/12/26
- メディア: 大型本
- この商品を含むブログ (6件) を見る
■まとめ
ポインタの操作とか、メモリの解法とか、他の開発言語では勝手にやってくれているようなことも、C言語だと自分で処理するコードを書かなければならないので、あまり初心者に優しい言語とは言えないかもしれません。
ただ、エンジニアの中には「自分で操作できるのがよい」「動作が早いのが魅力」「難しいからこそおもしろい」という人も結構いますね。
また、他の言語のライブラリも中身はC言語(やC++など)で書いてあったりするので、一通り使い方を習得しておけば、ライブラリの中身を解読する時やプログラムが裏側で何をしているかを考える際に役立つかと思います。
「ポインタどころか基本的な文法もあやしいので、まずはC言語を使えるようになりたい!」という方は、プログラミングが動画で学べる「paizaラーニング」の「C言語入門編」から始めてみるのもおすすめです。「C言語入門編」は【全編無料】です!
「paizaラーニング」では、未経験者でもブラウザさえあれば、今すぐプログラミングの基礎が動画で学べるレッスンを多数公開しております。
そして、paizaでは、Webサービス開発企業などで求められるコーディング力や、テストケースを想定する力などが問われるプログラミングスキルチェック問題も提供しています。
スキルチェックに挑戦した人は、その結果によってS・A・B・C・D・Eの6段階のランクを取得できます。必要なスキルランクを取得すれば、書類選考なしで企業の求人に応募することも可能です。「自分のプログラミングスキルを客観的に知りたい」「スキルを使って転職したい」という方は、ぜひチャレンジしてみてください。