paiza開発日誌

IT/Webエンジニア向け総合求人・学習サービス「paiza」(https://paiza.jp ギノ株式会社)の開発者が開発の事、プログラミングネタ、ITエンジニアの転職などについて書いています。

初心者でも独学でC言語のポインタについて理解できるサイトと書籍6選

f:id:paiza:20180126124700j:plain
Photo by Tnarik Innael

プログラミングをこれから学ぼうとしている方や、これから研修や実務に入る新人エンジニアの皆さんの中には「C言語を学習したい」という方もいらっしゃるかと思います。

C言語は、プログラミング言語の中でも群を抜いて処理速度が早く、一般的なシステムの開発だけでなく、OSやハードウェアの開発にも向いており、WindowsLinuxといったOSの開発にも使われています。

基礎的なプログラミング言語として人気が高く、大学などの情報系学部の授業でも取り上げられることの多いC言語ですが、習得するのは「難しい」「ハードルが高い」と思われがちです。

C言語のハードルを上げている要因の一つは、「ポインタ」の存在かと思います。

ポインタとは、メモリの場所であるアドレスを記憶するための変数のことなんですが、初心者にそれだけ言われても何のこっちゃという感じですよね。

そこで今回は、C言語初心者がつまづきがちなポインタについて学べるコンテンツを6件ご紹介します。

■今度こそC言語のポインタを克服できるコンテンツ

苦しんで覚えるC言語

f:id:paiza:20180126115111j:plain
苦しんでとありますが、「市販書籍と同等以上の完成度」とある通り(というか書籍化もされています)、C言語について初心者向けに本当に丁寧に解説されているサイトです。ポインタについても詳しい解説と練習問題があります。

書籍版

苦しんで覚えるC言語

苦しんで覚えるC言語

ドットインストール


ドットインストールでは、ポインタについても動画で学べます。

手を動かしてさくさく理解する C言語/C++ ポインタ入門

f:id:paiza:20170608152408p:plain
ポインタの演習問題がたくさん公開されているので、問題を解きながら身につけたい人におすすめです。

C言語ポインタ完全制覇

ポインタについて学びたい人にはとにかく読んでほしい一冊。ポインタとメモリの関係性や、ポインタを有効に使う例など、ポインタに焦点を当てた詳しい解説があります。C言語について「基礎的な構文は一通り習得できたけど、ポインタでつまずいてる……」というレベル感の人向けかと思います。

◆詳解C言語 ポインタ完全攻略

詳解C言語 ポインタ完全攻略

詳解C言語 ポインタ完全攻略

C言語入門書として人気の『新版明解C言語入門編』の著者、柴田先生がポインタに焦点を当ててみっちり解説した本です。これも、明解C言語のような入門書を読んで「文法とかは理解できるけどポインタはどうにもわからん」という人向け。

◆詳説 Cポインタ

詳説 Cポインタ

詳説 Cポインタ

オライリーのポインタ本。プログラムが動作するためのメモリ構造と管理方法についても解説されており、他の言語を使っているけどメモリについて学びたいという人にもおすすめです。

■まとめ

ポインタの操作とか、メモリの解法とか、他の開発言語では勝手にやってくれているようなことも、C言語だと自分で処理するコードを書かなければならないので、あまり初心者に優しい言語とは言えないかもしれません。

ただ、エンジニアの中には「自分で操作できるのがよい」「動作が早いのが魅力」「難しいからこそおもしろい」という人も結構いますね。

また、他の言語のライブラリも中身はC言語(やC++など)で書いてあったりするので、一通り使い方を習得しておけば、ライブラリの中身を解読する時やプログラムが裏側で何をしているかを考える際に役立つかと思います。


「ポインタどころか基本的な文法もあやしいので、まずはC言語を使えるようになりたい!」という方は、プログラミングが動画で学べる「paizaラーニング」の「C言語入門編」から始めてみるのもおすすめです。「C言語入門編」は【全編無料】です!





paizaラーニング」では、未経験者でもブラウザさえあれば、今すぐプログラミングの基礎が動画で学べるレッスンを多数公開しております。

そして、paizaでは、Webサービス開発企業などで求められるコーディング力や、テストケースを想定する力などが問われるプログラミングスキルチェック問題も提供しています。

スキルチェックに挑戦した人は、その結果によってS・A・B・C・D・Eの6段階のランクを取得できます。必要なスキルランクを取得すれば、書類選考なしで企業の求人に応募することも可能です。「自分のプログラミングスキルを客観的に知りたい」「スキルを使って転職したい」という方は、ぜひチャレンジしてみてください。

paizaのスキルチェック





※このブログで紹介しているキャンペーンやイベント、およびサイト内の情報については、すべて記事公開時の情報となります。閲覧されたタイミングによっては状況が変わっている場合もございますのでご了承ください。

ITプログラマー・エンジニア転職・就活・学習のpaiza

プログラミング入門講座|paizaラーニング

PHP入門編Ruby入門編Python入門編Java入門編JavaScript入門編C言語入門編C#入門編アルゴリズム入門編AI機械学習入門

エンジニアのためのプログラミング転職サイト|paiza転職

プログラミング スキルチェックエンジニア求人一覧

未経験からエンジニアを目指す人の転職サイト|EN:TRY

プログラミング スキルチェックエンジニア未経験可求人一覧

エンジニアを目指す学生の就活サイト|paiza新卒

プログラミング スキルチェックエンジニア求人一覧

ブラウザを開くだけで エディタ、Webサーバ、DB等の開発環境が整う|PaizaCloud