未分類

C言語は、人間に理解しやすい文法で、 メモリを直接操作して効率的に処理できるよう設計された、 ポインタ演算を中核とする“人間と機械の中間の言語”である。

🧠 1. 「人間よりの言語」=アセンブリよりは高級C言語は、もともとアセンブリ(機械語)で書かれていたUNIXをもう少し人間が書きやすくするために生まれました。比較アセンブリC言語命令MOV AX, x = *p;データレジスタやアドレスを...
C言語

C言語はポイント演算を効率化する仕組である

🧩 C言語は、配列やメモリをポインタ演算で直接操作できるようにし、コンパイラとCPUが最短経路で実行できるように設計された言語である。🧭 1. そもそもC言語の目的とは?C言語は1970年代にUNIX OSを作るために設計されました。当時の...
C言語

C言語の型チェックは、コンパイル時に行われる

C言語の型チェックの仕組み(整理版)① 型情報は「コンパイル時」にだけ存在するCの型(int, char*, doubleなど)は、コンパイラがソースコードを読むときに使う“設計図” のようなもの。コンパイル時に型の整合性をチェックし、どの...
未分類

アドビからの脱出

Adobe製品の代わりに、無料または低価格のものも充実しています。Adobe製品代替ソフト特徴PhotoshopPhotopea(Web無料)/Affinity Photo(買い切り1万円前後)Photoshop互換の.psd対応Illus...
C言語

学習オススメサイト

C言語

c言語ではビット単位の演算を機械語のようにできる

C言語は高級言語でありながら、ハードウェアに近い処理を直接記述できる言語である。その中でも特徴的なのが、ビット単位での演算が可能であるという点だ。Cのビット演算子はCPUの命令に極めて近く、機械語やアセンブリに対応する低レベルの操作を行うこ...
未分類

別ファイルでの関数のリンク

C言語では、コンパイル後のリンク段階で、同じ名前の関数があるとリンカは**「名前だけを頼りに結びつける」という単純な仕組みになっている。これは、C言語がもともと効率と最小構成を重視して設計された**ためであり、リンカが型情報まで確認するよう...
C言語

ポインタが型付アドレスであるということ

🧭 1. ポインタの本質:「アドレスを記憶する変数」まず前提として、ポインタとは「**メモリ上の住所(アドレス)**を記憶する変数」です。たとえば:int a = 10;int *p = &a;ここで p は a のメモリ上の場所(アドレス...
未分類

c言語は高速処理と直接制御のために、機能を極限まで削ぎ落とした言語

🧩 1. C言語の設計思想:「できるだけ低く、でもアセンブリではない」1970年代のコンピュータ開発では、OSやコンパイラはアセンブリで書かれていました。しかし、CPUが変わるたびに全部書き直し。そこでデニス・リッチーは考えました👇「機械語...
C言語

C言語のポインタはメモリを直接操作すること

💡 C言語がポインタを導入した最大の理由は、「メモリを直接操作するため」 です。そしてポインタは、C言語の「骨格(中核構造)」そのものです。🧩 1. ポインタ導入の根本理由:→ 「メモリを直接扱う必要があった」C言語はもともと UNIX O...
PAGE TOP