もともとは、Unix という OS(Operation System) を開発するための言語である。 B言語という、Compile Based Language の時世代の言語として誕生したのが名前の由来とも言われている。
ハードウェアの性能を最大限に引き出すためにかなりハードウェアに密着した書き方をしており、他の言語では到達できない高速処理を実現している。 一方でハードウェアに近い分簡単に暴走してしまうという特徴がある。 低級から高級まで幅広い言語に対応する知識が必要なので、難しい言語ではあるがプログラミングを理解する上で重要な言語である。
https://dotinstall.com/lessons/basic_c
file: dotinstall.c
contents:
基本的な文法の確認
https://www.sist.ac.jp/~suganuma/learn/enshu.htm
files: sizuokaExercises/chapter[1-16].c
contents:
C言語で重要になる概念であるポインタについて、様々な資料にあたりつつ学習する。
files: learnPointer.c
contents:
references:
C言語でのデバッグ方法
Segmentation fault が throw された時の解消法について。
https://minus9d.hatenablog.com/entry/20140121/1390314231
gcb (デバッガ)の利用方法
https://qiita.com/arene-calix/items/a08363db88f21c81d351
KeyChain の作成方法
https://qiita.com/takahashim/items/204ffa698afe09bd4e28
C言語で用いられる演算子の展開順序に関する注意
link
コンピュータアーキテクチャ
メモリの構造 https://www.cqpub.co.jp/interface/sample/200602/if0602_chap1.pdf