エンジニアくん– Author –
組み込みソフトエンジニアとして働きながら、
C言語・メモリ・ポインタなどの基礎から実務まで解説しています。
副業・キャリアについても実体験ベースで発信中です。
X・Qiita・noteでも発信しています。
・X:更新情報・日常
・Qiita:技術発信
・note:キャリア・副業
▼まずはここから読むのがおすすめ
・C言語文法シリーズ
・メモリ領域解説シリーズ
・割り込み処理解説シリーズ
・ソフトウェア設計解説シリーズ
・キャリアと副業ロードマップ
-
C言語
C言語のenumとは?整数との違いと使いどころをわかりやすく解説
はじめに C言語の enum は、意味のある整数に名前を付ける仕組みです。 たとえば次のようなコードを見てください。 Cint mode = 1; if (mode == 1) { start(); }int mode = 1; if (mode == 1) { start(); } このコード、動きは分かりますが 1 が何を意味し... -
C言語
C言語の typedef とは?型の別名の意味と struct との組み合わせをわかりやすく解説
C言語文法解説シリーズ 本記事は「C言語文法解説シリーズ」の1つです。C言語の文法を、組み込み開発の視点も交えて解説します。 👉 C言語文法解説シリーズ一覧はこちら C言語には、型に別名をつけるためのキーワードがあります。それが typedef です。 typ... -
C言語
volatileとは?C言語で最適化を防ぐ理由と使いどころをわかりやすく解説
C言語の volatile は、static・const・extern と並ぶ修飾子の1つです。しかし、この volatile は初心者がつまずきやすいキーワードでもあります。 理由はシンプルで、 「なぜ必要なのか」が直感的に分かりにくいからです。 この記事では volatileとは何か ... -
C言語
C言語のexternとは?別ファイルの変数を使う仕組みをわかりやすく解説
C言語文法解説シリーズ 本記事は「C言語文法解説シリーズ」の1つです。C言語の文法を、組み込み開発の視点も交えて解説します。 👉 C言語文法解説シリーズ一覧はこちら C言語で開発をしていると、ファイルを分割してコードを書くようになります。 例えば、... -
C言語
constとは?C言語で値を変更させないためのキーワード【staticとの違いも解説】
C言語文法解説シリーズ 本記事は「C言語文法解説シリーズ」の1つです。C言語の文法を、組み込み開発の視点も交えて解説します。 👉 C言語文法解説シリーズ一覧はこちら C言語の const は、値を変更できないことを示すキーワードです。 変数に const を付け... -
ソフトウェア設計
C言語のstaticはなぜ必要?公開範囲を制限する設計のメリットを解説
はじめに C言語の static は、公開範囲を制限するために使われます。 static を付けると、その変数や関数は同じファイルの中からしか見えなくなります。 つまり 他のファイルから参照できない 外部から呼び出せない 内部専用になる という状態になります。... -
C言語
C言語のstaticとは?意味と使い方をわかりやすく解説【ローカル変数・グローバル変数・関数】
staticとは(概要) static は、C言語で「寿命」や「公開範囲」を制御するキーワードです。 - staticローカル変数:関数を抜けても値が残る- staticグローバル変数:そのファイル内だけで使える- static関数:そのファイル内だけで使える C言語文法解説シ... -
メモリ領域
リンカスクリプトとは?組み込みC言語のメモリ配置の仕組みをわかりやすく解説
メモリ領域解説シリーズ 本記事は「メモリ領域解説」シリーズの1つです。 メモリ領域解説シリーズの全体像はこちら 組み込み開発では、プログラムや変数がROMやRAMのどこに配置されるかが決まっています。 メモリ領域の全体像 この配置(メモリマップ)を... -
メモリ領域
メモリマップとは?組み込み開発でのROM・RAM配置をわかりやすく解説
メモリ領域解説シリーズ 本記事は「メモリ領域解説」シリーズの1つです。 メモリ領域解説シリーズの全体像はこちら 組み込み開発では、プログラムや変数がどこに配置されるかを理解することが重要です。その配置を示したものが メモリマップ です。 メモリ... -
メモリ領域
DRAMとSRAMの違いとは?組み込み開発での使い分けをわかりやすく解説
メモリ領域解説シリーズ 本記事は「メモリ領域解説」シリーズの1つです。 メモリ領域解説シリーズの全体像はこちら RAMにはいくつか種類があり、代表的なのが DRAM と SRAM です。 どちらもRAMですが、仕組みや特性が大きく異なります。この違いは、組み込...