索引
               記号               
 ″(ダブルクォーテーション)  
35   
 #(シャープ)  
23(Coffee Break 1.3)   
 #defineディレクティブ  
27   
 #include<stdio.h>  
23(Coffee Break 1.3)   
34   
 #includeディレクティブ  
23(Coffee Break 1.3)   
34   
 $  
25(脚注62)   
 % (余りを求める演算子)  
49   
 %(プロンプト)  
25(脚注62)   
 %d  
44   
 %d (フォーマット指定子)  
44   
 & (アンパサンド)  
44   
 * (乗算演算子)  
46   
 */ (コメント終了)  
36   
 + (加算演算子)  
46   
 - (減算演算子)  
46   
 -c (オプション)  
38   
 -o (オプション)  
38   
 ./a.out  
25   
 .exe  
31   
 .h  
23(Coffee Break 1.3)   
 / (除算演算子)  
46   
 /* (コメント開始)  
36   
 // (行内コメント)  
37   
      
 リスト2.6 コメントの書き方(その4、//を使って書く)  
37   
(セミコロン)  
34   
 <math.h>  
25(Coffee Break 1.4)   
 <stdio.h>  
23(Coffee Break 1.3)   
25(Coffee Break 1.4)   
 で定義されている関数  
      
 printf 関数  
25(Coffee Break 1.4)   
34   
41   
47   
      
 scanf 関数  
43   
 = (代入)  
42   
 == (等号)  
48   
 >(プロンプト)  
25(脚注62)   
 \ (逆スラッシュ)  
35   
 \n (改行記号)  
35   
 {(中括弧開き)  
34   
35   
 }(中括弧閉じ)  
34   
35   
 ¥ (円)  
35   
 ¥n (改行記号)  
35   
35(脚注1)   
               数字               
 0.1を10回加えても1.0にならない  
6   
 0.1を2進数に変換すると循環小数になる  
6   
 0.1を正しく表現して計算できる10進演算機能  
6   
 10進演算機能  
6   
      
 0.1を正しく表現して計算できる10進演算機能  
6   
 1940年代の初期  
4   
 1947年  
4   
 1970年代初期  
7   
 1983年  
7   
 1988年末  
7   
 1998年  
11   
 1行単位でのコメント  
37   
 232=4,294,967,296  
14   
 264=18,446,744,073,709,551,616  
14   
 2020年  
8   
 2020年6月  
8(脚注21)   
 2020年春  
31   
 2K  
8   
8(脚注23)   
 2進数  
21   
      
 0.1を10回加えても1.0にならない  
6   
      
 0.1を2進数に変換すると循環小数になる  
6   
      
 0.1を正しく表現して計算できる10進演算機能  
6   
      
 循環小数ではCの実数を正しく表現できない理由  
6(脚注10)   
 2進接頭辞  
11   
 2つの数を足し算するCプログラム  
20   
 2つの整数が割り切れるならば  
48   
 2つの整数が割りきれる場合答えを表示するプログラム  
49   
 4bit CPU  
10   
 4GByte  
14   
 4K  
8   
 64bit CPU  
10   
14   
               A               
 ALU  
12   
13   
14   
15   
16   
 AND  
13   
 ANSI  
7   
 ANSI C  
7   
22(脚注58)   
 Android  
7(脚注12)   
8(脚注23)   
18(脚注49)   
 Apple  
31   
 Arithmetic Logic Unit  
13(脚注34)   
 AT&Tベル研究所  
7   
 a.out  
25   
38   
 algorithm  
2   
 assembler  
16   
 assembly language  
16   
 assembly program  
16   
 assign  
42   
 assignment statement  
43   
               B               
 B  
11   
 Basic  
5(表1.1)   
2   
5(脚注6)   
 Basic Input Output System  
17(脚注46)   
 BIOS  
17   
17(脚注46)   
 Blu-Ray  
10   
 Brian W. Kernighan  
7   
 B言語  
7(脚注15)   
      
 開発者  
      
      
 Ken Thompson  
7(脚注15)   
 bash  
28   
 binary digit  
11   
 bit  
11   
 break point  
26   
 bug  
3   
4   
 byte  
11   
               C               
 C  
5   
5(表1.1)   
2   
7   
      
 ANSI C  
7   
      
 C11  
8   
      
 C18  
8(脚注21)   
      
 C89  
7   
      
 C95  
8   
      
 C99  
8   
      
 Cコンパイラ  
7   
      
 Cの特徴  
6   
      
 開発者  
      
      
 Dennis M. Ritchie  
7   
      
 標準言語案  
7   
 C compiler  
22   
 C#  
5   
2   
6   
 C++  
5   
2   
6   
7(脚注15)   
 C11  
8   
 C18  
8(脚注21)   
 C89  
7   
 C95  
8   
 C99  
8   
 Cathode Ray Tube  
8(脚注22)   
 CD-ROM  
10   
 CentOS  
31   
 Central Processing Unit  
10   
 COBOL  
5(表1.1)   
2   
6   
 Command Line Tools  
31(脚注77)   
 Command User Interface  
21   
 CPU  
9(図1.4)   
10   
 CPUは同時に1つのプログラムしか実行できない  
18   
 CRT  
8   
8(脚注22)   
 CUI  
21   
31   
 Cygwin  
31   
 Cコンパイラ  
7   
22   
24(図1.11)   
24(図1.12)   
25   
 Cの位置づけ  
      
 C  
5   
 Cの特徴  
6   
 Cプログラム  
24(図1.12)   
32   
 Cプログラム実行までの手順  
24(図1.12)   
 click  
9(脚注24)   
 cmd.exe  
28   
 compile  
22   
 csh  
28   
               D               
 Dennis M. Ritchie  
7   
 DRAM  
10   
10(脚注28)   
14   
 DVD  
10   
 Dynamic RAM  
10(脚注28)   
14   
 debug  
4   
26   
 debug write  
26   
 debugger  
26   
 directive  
23(Coffee Break 1.3)   
 double  
42   
               E               
 Emacs  
21   
 edit  
21   
 editor  
21   
 else 文  
50   
      
 リスト2.12 割りきれない場合の処理を追加したプログラム  
50   
      
 リスト2.13 入力された値が0でないかチェックするプログラム  
51   
 error message  
22   
 exec  
29(脚注72)   
 executable file  
18   
 exeファイル  
31(脚注75)   
 expected ';' after expression  
41   
               F               
 Fortran  
5(表1.1)   
2   
 FR  
12   
13   
 file  
19   
 file system  
19   
 fork  
29(脚注72)   
               G               
 GiB  
11   
 GNU  
25   
25(脚注65)   
31   
 Graphical User Interface  
5(脚注7)   
21   
 GUI  
5   
5(脚注7)   
21   
31   
 gcc コマンド  
24   
25(脚注63)   
31   
38   
39   
      
 -c (オプション)  
38   
      
 -o (オプション)  
38   
      
 出力するファイルを指定するコマンド  
38   
      
 リンクの実行コマンド  
39   
 grammer  
2   
               H               
 Hard Disk Drive  
10   
 HDD  
10   
 header file  
23(Coffee Break 1.3)   
               I               
 IEC  
11   
 IR  
12   
13   
15   
 ISO  
8   
 if 文  
48   
 int  
42   
 int main( void )  
34   
 iOS  
7(脚注12)   
               J               
 Java  
5   
2   
6   
7(脚注15)   
 JIS C  
22(脚注58)   
 JIS規格(X3010)  
8   
               K               
 KB  
11   
 Kbyte  
11   
 Ken Thompson  
7(脚注15)   
               L               
 LAN  
10   
 Linus Torvalds  
7(脚注20)   
 Linux  
7   
7(脚注20)   
17   
18   
30   
31   
      
 CentOS  
31   
      
 Ubuntu  
31   
      
 開発者  
      
      
 Linus Torvalds  
7(脚注20)   
 Lisp  
5(表1.1)   
2   
 Local Area Network  
10   
 library  
25(Coffee Break 1.4)   
 load  
15(脚注43)   
 load module  
18   
               M               
 Mac OS  
7(脚注12)   
 MacOS  
31   
 Makefile  
39   
 Mark IIコンピュータ  
4   
7   
 MB  
11   
 Mbyte  
11   
 MiB  
11   
 Microsoft  
5   
31   
      
 Visual Studio  
31   
 MinGW  
31   
 MSYS2  
31   
 Multi Task OS  
18   
 machine langugae  
16   
 macOS  
17   
18   
 main 関数  
35   
 media  
19   
               O               
 Operating System  
7   
 OR  
13   
 OS  
7   
17   
29   
 OSの起動プログラム  
17   
 OSの役割  
17   
 object file  
22   
 optimization  
22   
               P               
 Pascal  
5(表1.1)   
2   
 PC  
7(脚注19)   
13   
 PDP-11  
7   
7(脚注13)   
 Pipe  
18   
 PL/I  
5(表1.1)   
2   
6   
 PowerShell  
28   
 Process  
18   
 Prolog  
5(表1.1)   
2   
 Python  
5   
2   
 preprocessor  
23(Coffee Break 1.3)   
 printf 関数  
25(Coffee Break 1.4)   
34   
41   
47   
      
 複数の変数を表示する  
47   
 printf 文  
34   
 program  
2   
 programming  
2   
 programming language  
2   
 prompt  
25(脚注62)   
26   
               R               
 R  
5(表1.1)   
2   
 RAM  
10(脚注28)   
14   
 Random Access Memory  
14   
 Read Only Memory  
14   
 ROM  
14   
17(脚注46)   
 RUNさせる  
26   
 reference  
43   
 return 0;  
35   
 return 文  
35   
 runtime library  
25   
               S               
 SDカード  
14   
 SDカードメモリ  
10   
 Segmentation Fault  
41   
 Solid State Drive  
10   
 SRAM  
14   
 SSD  
10   
14   
 Static RAM  
14   
 Swap領域  
19(脚注52)   
 save  
21   
 scanf 関数  
43   
 sh  
28   
 shell  
28   
 source  
21   
 source code  
21   
 source file  
21   
 source list  
21   
 specification  
7(脚注16)   
 statement  
34   
 store  
15(脚注43)   
               T               
 TABキー  
35   
 Thrashing  
19(脚注52)   
 terminal window  
21   
 trace  
26   
 type  
42   
 typing  
26   
               U               
 Ubuntu  
31   
 UEFI  
17(脚注46)   
 UNIX  
7(脚注12)   
24   
29   
30   
31   
 UNIXオペレーティングシステム  
7   
 Unified Extensible Firmware Interface  
17(脚注46)   
 Unix  
28   
 USBメモリ  
10   
               V               
 Visual Basic  
5(表1.1)   
2   
 Visual C#  
6   
      
 C++  
6   
 Visual Studio  
31   
 Visual Studio Code  
21   
 variable  
42   
 variable name  
42   
 vi  
21   
 vim  
21   
               W               
 WAN  
10   
 Web上  
32   
 Wi-Fi  
10   
 Wide Area Network  
10   
 Windows  
6   
7(脚注12)   
17   
18   
29   
31   
      
 開発環境  
31   
 Windows Subsystem for Linux  
31   
 Windows10  
31   
 WSL  
31   
 warning  
22   
               X               
 X3J11  
7   
 Xcode  
31   
               あ               
 アイコン  
9   
 アスタリスク(*)  
46   
 アセンブラ  
16   
23(Coffee Break 1.3)   
 アセンブラの役割  
16(図1.9)   
 アセンブリ言語  
7   
7(脚注14)   
16   
23(Coffee Break 1.3)   
 アセンブリプログラム  
16   
 アセンブル  
23(Coffee Break 1.3)   
 アップデート  
      
 マイナーアップデート  
8(脚注21)   
      
 メジャーアップデート  
8(脚注21)   
 アドレス  
13   
14   
18   
 アドレス0番地  
18   
19   
 アドレス信号  
13   
 アプリケーション  
5(表1.1)   
 アプリケーション開発言語  
5   
 余り  
49   
      
 割りきれない  
49   
      
 割りきれる  
49   
 余りを求める演算子 (%)  
49   
 アルゴリズム  
2   
2   
3   
      
 2つの整数が割り切れるならば  
48   
      
 算法  
2   
      
 入力された値が0でないかチェックする  
51   
 アルゴリズムの開発・比較研究  
5(表1.1)   
 アンパサンド  
44   
               い               
 イコール  
42   
 移植  
7(脚注18)   
 移植性  
7   
16   
      
 移植性が高い  
7(脚注18)   
      
 移植性が低い  
7(脚注18)   
 移植性が高い  
7(脚注18)   
 移植性が低い  
7(脚注18)   
 インクルード  
25   
 インストール  
17   
31   
 インターネット  
5(表1.1)   
 インターネットプロバイダ  
10   
 インデント  
35   
 イーサネット  
10   
               う               
 ウィンドウ  
9   
      
 端末ウィンドウ  
28   
 ウォーニング  
22   
23(表1.2)   
 動かす  
26   
               え               
 液晶ディスプレイ  
8   
 エクサ  
11   
 エスケープシーケンス  
35   
      
 \n (改行記号)  
35   
      
 ¥n (改行記号)  
35   
35(脚注1)   
 エディタ  
3   
21   
28   
      
 Emacs  
21   
      
 Visual Studio Code  
21   
      
 vi  
21   
      
 vim  
21   
 エラー  
22   
23(表1.2)   
40   
      
 Segmentation Fault  
41   
      
 コンパイルエラー  
40   
41   
      
 実行時エラー  
40   
41   
      
 実行はできるが結果が正しくない  
41   
      
 標準エラー出力  
27   
28   
30   
 エラーとなるコメントの書き方  
36   
 エラーメッセージ  
22   
24(図1.11)   
30   
41   
      
 全角スペース  
41   
      
 文の最後にセミコロンがない  
41   
 演算子  
      
 % (余りを求める演算子)  
49   
      
 * (乗算演算子)  
46   
      
 + (加算演算子)  
46   
      
 - (減算演算子)  
46   
      
 / (除算演算子)  
46   
      
 = (代入)  
42   
      
 == (等号)  
48   
 円盤  
10   
               お               
 オブジェクト  
22(脚注58)   
24(図1.12)   
 オブジェクトコード  
38   
 オブジェクト指向プログラミング  
22(脚注58)   
 オブジェクトファイル  
22   
23(Coffee Break 1.3)   
24(図1.11)   
24(Coffee Break 1.3)   
38   
39   
 おぶじぇくとモジュール  
24(Coffee Break 1.3 脚注a)   
 オプション  
      
 -c (オプション)  
38   
      
 -o (オプション)  
38   
 オペレーティングシステム  
5(表1.1)   
6(脚注9)   
7   
7(脚注12)   
      
 Android  
7(脚注12)   
8(脚注23)   
18(脚注49)   
      
 CentOS  
31   
      
 iOS  
7(脚注12)   
      
 Linux  
7   
17   
18   
30   
31   
      
 Mac OS  
7(脚注12)   
      
 MacOS  
31   
      
 Multi Task OS  
18   
      
 macOS  
17   
18   
      
 OSの役割  
17   
      
 Ubuntu  
31   
      
 UNIX  
7(脚注12)   
24   
30   
31   
      
 UNIXオペレーティングシステム  
7   
      
 Windows  
7(脚注12)   
17   
18   
      
 Windows Subsystem for Linux  
31   
      
 Windows10  
31   
      
 WSL  
31   
      
 マルチタスクOS  
18   
19   
 オンラインバンキングシステム  
5(表1.1)   
               か               
 改行  
35   
 会社  
      
 Apple  
31   
      
 Microsoft  
5   
31   
 階層的にファイルを管理  
19   
 解像度  
8   
 解読  
13   
 開発環境  
5   
5(脚注8)   
30   
31   
38   
      
 Visual Studio  
31   
      
 Windows  
31   
      
 開発環境構築  
31   
      
 ツール  
30   
      
 統合開発環境  
25   
30   
 開発環境構築  
31   
 開発者  
      
 Dennis M. Ritchie  
7   
      
 Ken Thompson  
7(脚注15)   
      
 Linus Torvalds  
7(脚注20)   
 開発手法  
      
 モジュール化  
6   
 開発ツール  
31   
      
 Cygwin  
31   
      
 MinGW  
31   
      
 MSYS2  
31   
      
 WSL  
31   
      
 Xcode  
31   
 科学技術計算  
5(表1.1)   
6   
 書き方  
      
 エラーとなるコメントの書き方  
36   
      
 コメントの書き方  
36   
      
 リスト2.3 コメントの書き方(その1、複数行にわたって書く)  
36   
      
 リスト2.4 コメントの書き方(その2、命令文の後ろに書く)  
36   
      
 リスト2.6 コメントの書き方(その4、//を使って書く)  
37   
 拡張子  
23(Coffee Break 1.3)   
31   
      
 .exe  
31   
      
 .h  
23(Coffee Break 1.3)   
 加算  
13   
 加算演算子  
46   
 仮想メモリ  
18   
19   
 型  
42   
 型名  
      
 double  
42   
      
 int  
42   
 可読性  
35   
      
 リスト2.2 ソースコードの可読性を向上させるCプログラム  
35   
 関数  
      
 main 関数  
35   
      
 printf 関数  
25(Coffee Break 1.4)   
41   
47   
      
 scanf 関数  
43   
 カーソル  
44   
 外部バス  
14   
 学習  
      
 プログラミングの学習  
30   
 学問に王道なし  
20   
 画像編集  
5(表1.1)   
               き               
 記憶域  
19   
 機械学習  
5(表1.1)   
 機械語  
16   
21   
23(Coffee Break 1.3)   
24(Coffee Break 1.3)   
25(脚注63)   
34   
 機械語プログラム  
16   
22(図1.10)   
 机上デバッグ  
26   
 起動  
17   
      
 OSの起動プログラム  
17   
 起動プログラム  
17   
 休止状態  
10   
 給与計算  
5(表1.1)   
 教育  
5(表1.1)   
 キロバイト  
11   
 キー  
28   
 キーボード  
8   
9   
28   
29   
 キーボードからの入力  
43   
 キーボード入力  
44   
 ギガ  
11   
 行内コメント  
37   
      
 // (行内コメント)  
37   
      
 リスト2.6 コメントの書き方(その4、//を使って書く)  
37   
               く               
 区分  
19   
 クリック  
9   
9(脚注24)   
 クロック  
15   
 クロック信号  
15   
 グヌー  
25(脚注65)   
 グラフィカルユーザインタフェース  
5   
               け               
 計算誤差  
6(脚注11)   
      
 0.1を10回加えても1.0にならない  
6   
      
 0.1を2進数に変換すると循環小数になる  
6   
      
 0.1を正しく表現して計算できる10進演算機能  
6   
      
 循環小数ではCの実数を正しく表現できない理由  
6(脚注10)   
 計算してみよう  
41   
 携帯電話  
10   
 研究  
5(表1.1)   
 言語  
      
 assembly language  
16   
      
 programming language  
2   
      
 アセンブリ言語  
7   
7(脚注14)   
16   
23(Coffee Break 1.3)   
      
 アプリケーション開発言語  
5   
      
 高級言語  
7(脚注14)   
17   
      
 新言語の開発  
5(表1.1)   
      
 標準言語案  
7   
      
 プログラミング言語  
2   
16   
 減算  
13   
 減算演算子  
46   
               こ               
 光学マウス  
9   
 高級言語  
7(脚注14)   
17   
 構築  
      
 開発環境構築  
31   
 国際電気標準会議  
11   
 コマンド  
25   
28   
38   
      
 bash  
28   
      
 cmd.exe  
28   
      
 csh  
28   
      
 gcc コマンド  
24   
25(脚注63)   
31   
38   
      
 sh  
28   
 コマンド引数  
25(脚注63)   
 コマンドプロンプト  
28   
 コマンドライン  
31   
 コメント  
35   
36   
45   
      
 */ (コメント終了)  
36   
      
 /* (コメント開始)  
36   
      
 // (行内コメント)  
37   
      
 1行単位でのコメント  
37   
      
 エラーとなるコメントの書き方  
36   
      
 行内コメント  
37   
      
 複数行のコメント  
36   
      
 ブロック単位でのコメント  
37   
      
 リスト2.3 コメントの書き方(その1、複数行にわたって書く)  
36   
      
 リスト2.4 コメントの書き方(その2、命令文の後ろに書く)  
36   
      
 リスト2.5 コメントの書き方(その3、コンパイルエラーとなる例)  
37   
      
 リスト2.6 コメントの書き方(その4、//を使って書く)  
37   
 コメントの書き方  
36   
 コメントの書き方(その1、複数行にわたって書く)  
36   
 コメントの書き方(その2、命令文の後ろに書く)  
36   
 コメントの書き方(その3、コンパイルエラーとなる例)  
35   
 コメントの書き方(その4、//を使って書く)  
37   
 コンデンサ  
9   
14   
 コンパイラ  
5(表1.1)   
7(脚注17)   
22   
23(Coffee Break 1.3)   
24(図1.11)   
32   
34   
      
 Cコンパイラ  
7   
25   
      
 コンパイルのみの実行  
38   
 コンパイル  
3   
22   
23(Coffee Break 1.3)   
38   
      
 アセンブル  
23(Coffee Break 1.3)   
      
 ウォーニング  
23(表1.2)   
      
 エラー  
23(表1.2)   
      
 コンパイルエラー  
25   
40   
      
 コンパイルの流れ  
24(図1.11)   
      
 コンパイルのみの実行  
38   
      
 実行させてみよう  
27   
      
 なぜコンパイルとリンクという工程が分かれているか  
39   
      
 プリプロセス  
23(Coffee Break 1.3)   
      
 リンカ  
23(Coffee Break 1.3)   
 コンパイルエラー  
25   
34   
40   
41   
      
 リスト2.5 コメントの書き方(その3、コンパイルエラーとなる例)  
37   
      
 リスト2.7 コンパイルエラーとなる誤ったソースコード  
40   
 コンパイルエラーとなる誤ったソースコード  
40   
 コンパイルの流れ  
24(図1.11)   
 コンパイルのみの実行  
38   
 コンピュータ  
      
 Mark IIコンピュータ  
7   
      
 PDP-11  
7(脚注13)   
      
 コンピュータ起動時  
17   
      
 コンピュータ入門  
8   
      
 コンピュータの起動  
17   
      
 コンピュータの構成  
11   
      
 コンピュータの動作原理  
15   
      
 コンピュータの中身  
8   
      
 コンピュータの理解する言葉  
16   
      
 フォン・ノイマン型アーキテクチャ  
12   
 コンピュータ起動時  
17   
 コンピュータ入門  
8   
 コンピュータの起動  
17   
 コンピュータの構成  
11   
 コンピュータの動作原理  
15   
 コンピュータの中身  
8   
 コンピュータの理解する言葉  
16   
 コンピュータはプログラムに書かれたとおりに動作する  
26   
 誤動作を誘発する可能性  
23(表1.2)   
               さ               
 最初に発見された虫の事例  
4   
      
 虫  
4   
 最適化  
22   
23(Coffee Break 1.3)   
 再配置  
18   
 参照  
43   
45   
 算術論理演算ユニット  
13   
 サンプルプログラム  
      
 2つの数を足し算するCプログラム  
20   
      
 ソースコードの可読性を向上させるCプログラム  
35   
      
 メッセージを表示するCプログラム  
34   
      
 リスト2.3 コメントの書き方(その1、複数行にわたって書く)  
36   
      
 リスト2.4 コメントの書き方(その2、命令文の後ろに書く)  
36   
      
 リスト2.5 コメントの書き方(その3、コンパイルエラーとなる例)  
37   
      
 リスト2.6 コメントの書き方(その4、//を使って書く)  
37   
      
 リスト2.7 コンパイルエラーとなる誤ったソースコード  
40   
      
 リスト2.8 キーボードからの入力  
43   
      
 リスト2.9 足し算のプログラム  
45   
      
 リスト2.10 四則演算のプログラム  
46   
      
 リスト2.11 2つの整数が割りきれる場合答えを表示するプログラム  
49   
      
 リスト2.12 割りきれない場合の処理を追加したプログラム  
50   
      
 リスト2.13 入力された値が0でないかチェックするプログラム  
51   
 算法  
2   
      
 アルゴリズム  
2   
 サードパーティ  
17(脚注45)   
 座席予約システム  
5(表1.1)   
               し               
 シェル  
28   
28   
 シェルプログラム  
28   
 システム記述  
5(表1.1)   
6   
6(脚注9)   
7   
 四則演算  
45   
46   
      
 リスト2.10 四則演算のプログラム  
46   
 四則演算のプログラム  
46   
 集積回路  
9   
 主記憶装置  
10   
 出力  
30(図1.14)   
      
 標準エラー出力  
27   
30   
      
 標準出力  
27   
28   
29   
 出力するファイルを指定するコマンド  
38   
 初期化  
45   
 初期値  
43   
 初心者  
3   
 仕様  
7(脚注16)   
7   
 新言語の開発  
5(表1.1)   
 信号  
      
 アドレス信号  
13   
      
 制御信号  
13   
      
 データ信号  
13   
 深層学習  
5(表1.1)   
 シンボル  
16   
 シンボル情報  
38   
 磁気ハードディスク  
10   
 磁石  
10   
 磁性体  
10   
 実行  
      
 CPUは同時に1つのプログラムしか実行できない  
18   
      
 Cプログラム実行までの手順  
24(図1.12)   
      
 RUNさせる  
26   
      
 動かす  
26   
      
 実行させてみよう  
27   
      
 実行時エラー  
40   
      
 実行はできるが結果が正しくない  
40   
41   
      
 走らせる  
26   
      
 プログラムが実行できるまで  
17   
      
 プログラムが実行できるようになるまで  
17   
      
 プログラムの実行  
39   
      
 プログラムの実行が途中で停止してしまう  
41   
      
 プログラム実行の方法  
25   
      
 プログラムを実行させる  
26   
 実行アドレス生成  
15   
 実行可能ファイル  
18   
28   
31   
31(脚注75)   
 実行可能プログラム  
24(図1.12)   
25   
25(脚注63)   
      
 a.out  
25   
 実行形式  
18(脚注48)   
 実行サイクル  
15   
 実行させてみよう  
27   
 実行時エラー  
40   
41   
 実行する  
26   
 実行速度  
19   
 実行はできるが結果が正しくない  
40   
41   
 実行ファイル  
18(脚注48)   
39   
 実行を一時的に停止させる  
26   
 実メモリ  
18   
 事務計算  
5(表1.1)   
6   
 循環小数  
      
 0.1を10回加えても1.0にならない  
6   
      
 0.1を2進数に変換すると循環小数になる  
6   
 循環小数ではCの実数を正しく表現できない理由  
6(脚注10)   
 上級者  
3   
 条件判断  
48   
      
 もし~ならば、~する  
48   
      
 もし~ならば、~する、そうでない場合は~する  
50   
 条件分岐  
48   
 乗算演算子  
46   
 除算  
47   
      
 % (余りを求める演算子)  
49   
      
 整数どうしの除算では小数点以下が切り捨てられる  
47   
 除算演算子  
46   
 人工知能の研究  
5(表1.1)   
 人物  
      
 Brian W. Kernighan  
7   
      
 Dennis M. Ritchie  
7   
      
 Ken Thompson  
7(脚注15)   
      
 Linus Torvalds  
7(脚注20)   
               す               
 数学ライブラリ  
25(Coffee Break 1.4)   
 数値計算  
5(表1.1)   
6(脚注11)   
 スタンバイ機能  
10   
 ストア  
15   
15(脚注43)   
 スナップショット  
3   
26(脚注66)   
 スペース  
35   
 スミソニアン博物館  
4   
 スライドパッド  
9   
 スラッシュ(/)  
46   
 スラッシング  
19(脚注52)   
 スリープ  
10   
 スワップ領域  
19(脚注52)   
 スーパーコンピュータ  
7   
               せ               
 制御信号  
13   
 制御部  
12   
 正常終了  
35   
 整数  
      
 整数どうしの除算では小数点以下が切り捨てられる  
47   
 整数どうしの除算  
47   
 整数どうしの除算では小数点以下が切り捨てられる  
47   
 整数の除算  
      
 リスト2.11 2つの整数が割りきれる場合答えを表示するプログラム  
49   
 世界標準化機構(ISO)  
8   
 セクタ  
19(脚注55)   
 接続  
      
 無線接続  
9   
      
 有線接続  
9   
 セミコロン  
34   
      
 文の最後にセミコロンがない  
41   
 専用線  
10   
 税金計算  
5(表1.1)   
 ゼタ  
11   
 全角スペース  
41   
               そ               
 ソリッドステートドライブ  
10   
 ソース  
21   
 ソースコード  
21   
34   
      
 ソースコードの読み直し  
26   
 ソースコードの可読性を向上させるCプログラム  
35   
 ソースコードの読み直し  
26   
 ソースファイル  
21   
24(図1.11)   
      
 複数のソースファイル  
24(Coffee Break 1.3)   
 ソースファイルを作る  
20   
 ソースリスト  
21   
               た               
 耐震設計  
5(表1.1)   
 タイピング  
9   
 タイプ  
26   
 足し算  
45   
      
 リスト2.9 足し算のプログラム  
45   
 足し算のプログラム  
45   
 タッチパッド  
9   
 タブレット  
8(脚注23)   
 単位  
      
 B  
11   
      
 bit  
11   
      
 byte  
11   
      
 GiB  
11   
      
 KB  
11   
      
 Kbyte  
11   
      
 MB  
11   
      
 Mbyte  
11   
      
 MiB  
11   
      
 エクサ  
11   
      
 キロバイト  
11   
      
 ギガ  
11   
      
 ゼタ  
11   
      
 テラ  
11   
      
 バイト  
11   
      
 ビット  
11   
      
 ペタ  
11   
      
 メガバイト  
11   
      
 ヨタ  
11   
 単に通過したことを知らせるマーク  
27   
 端末ウィンドウ  
21   
28   
 端末ウィンドウベース  
31   
 ターミナル  
21   
 ターミナルウィンドウ  
21   
 大規模なプログラム  
6   
39   
 代入  
42   
43   
45   
 代入文  
43   
 ダブルクォーテーション  
35   
 ダートマス大学  
5(脚注6)   
               ち               
 チップ  
9   
 中央演算装置  
10   
 中括弧  
34   
 中級者  
3   
               つ               
 通過したときの状態  
27   
 通過したときの変数の値  
27   
 通信  
      
 プロセス間通信  
29   
 ツール  
30   
31   
               て               
 定理証明システム  
5(表1.1)   
 適用例  
      
 プログラミング言語  
2   
 テスト  
28   
41   
 テラ  
11   
 ディストリビューション  
31   
31(脚注76)   
 ディスプレイ  
28   
29   
 ディスプレイに表示する  
44   
 ディレクティブ  
23(Coffee Break 1.3)   
      
 #defineディレクティブ  
27   
      
 #includeディレクティブ  
23(Coffee Break 1.3)   
34   
 ディレクトリ  
19(脚注53)   
 デコード  
13   
15   
 デスクトップPC  
8   
 デバッガ  
3   
26   
 デバッグ  
4   
26   
28   
38   
      
 実行はできるが結果が正しくない  
41   
      
 デバッグライト  
28   
      
 プログラムの実行が途中で停止してしまう  
41   
 デバッグ手法  
3   
      
 机上デバッグ  
26   
      
 実行を一時的に停止させる  
26   
      
 スナップショット  
26(脚注66)   
      
 ソースコードの読み直し  
26   
      
 デバッガ  
26   
      
 デバッグライト  
26   
27   
      
      
 単に通過したことを知らせるマーク  
27   
      
      
 通過したときの状態  
27   
      
      
 通過したときの変数の値  
27   
      
 トレース  
26   
      
 トレース機能  
26   
      
 ブレークポイント  
26   
 デバッグ情報  
38   
 デバッグライト  
26   
27   
28   
      
 単に通過したことを知らせるマーク  
27   
      
 通過したときの状態  
27   
      
 通過したときの変数の値  
27   
 デベロッパ  
31   
 電源  
17   
 データ  
12   
 データ信号  
13   
 データレジスタ  
13   
               と               
 統計処理  
5(表1.1)   
 等号 (==)  
48   
 統合開発環境  
25   
30   
38   
      
 Xcode  
31   
 等号を使った条件式  
48   
 トラックパッド  
9   
 トランジスタ  
14   
 トレース  
26   
 トレース機能  
26   
 同期回路  
15   
 動作  
      
 コンピュータはプログラムに書かれたとおりに動作する  
26   
 動作環境  
      
 プログラムの動作環境  
27   
 どのようにつくるのか考える  
20   
 ドライバ  
5(表1.1)   
               な               
 内部バス  
14   
 流れ  
      
 プログラムの流れを変える  
48   
 なぜコンパイルとリンクという工程が分かれているか  
39   
               に               
 入出力  
29   
      
 標準入出力  
27   
28   
43   
      
 標準入出力ライブラリ  
28   
      
 ファイル入出力  
43   
      
 プログラムの入出力  
27   
 入力  
30(図1.14)   
      
 キーボードからの入力  
43   
      
 キーボード入力  
44   
      
 標準入力  
27   
28   
29   
      
 リスト2.8 キーボードからの入力  
43   
 入力された値が0でないかチェックする  
51   
 入力された値が0でないかチェックするプログラム  
51   
 ニーモニック  
16(脚注44)   
               ね               
 ネットワーク装置  
10   
 年代  
      
 1940年代の初期  
4   
      
 1947年  
4   
      
 1970年代初期  
7   
      
 1983年  
7   
      
 1988年末  
7   
      
 1998年  
11   
      
 2020年  
8   
      
 2020年6月  
8(脚注21)   
      
 2020年春  
31   
               は               
 ハイバネーション機能  
10   
 走らせる  
26   
 半導体  
9   
 反応が何もない状態  
26   
 汎用性  
6   
 ハードディスク  
10   
19   
 ハーバード大学  
4   
 媒体  
19   
 バイト  
11   
 バグ  
3   
4   
26   
      
 バグの原因  
28   
      
 虫  
3   
4   
 バグの原因  
28   
 バス  
12   
14   
      
 外部バス  
14   
      
 内部バス  
14   
 番地  
14   
 パイプ  
18   
19   
29   
      
 パイプの役割  
30(図1.14)   
 パイプの役割  
30(図1.14)   
 パソコン  
7   
 パッド  
      
 スライドパッド  
9   
      
 タッチパッド  
9   
      
 トラックパッド  
9   
 パーソナルコンピュータ  
7(脚注19)   
               ひ               
 光回線  
10   
 光ディスク  
10   
 非同期回路  
15(脚注41)   
 表示  
      
 ディスプレイに表示する  
44   
      
 メッセージを表示する  
34   
 標準エラー出力  
27   
28   
30   
 標準言語案  
7   
 標準出力  
27   
28   
29   
 標準入出力  
27   
28   
43   
 標準入出力ライブラリ  
25(Coffee Break 1.4)   
28   
 標準入力  
27   
28   
29   
 標準ライブラリ  
3   
39   
 ビジネスアプリ  
5(表1.1)   
 ビット  
11   
 ビルド  
38   
 ピクセル  
8   
               ふ               
 ファイル  
19   
27   
28   
      
 exeファイル  
31(脚注75)   
      
 オブジェクトファイル  
24(Coffee Break 1.3)   
38   
39   
      
 階層的にファイルを管理  
19   
      
 区分  
19   
      
 出力するファイルを指定するコマンド  
38   
      
 実行可能ファイル  
31   
31(脚注75)   
      
 実行ファイル  
39   
      
 セクタ  
19(脚注55)   
      
 ディレクトリ  
19(脚注53)   
      
 ファイルシステム  
19   
      
 ファイルの管理  
19   
      
 フォルダ  
19   
 ファイルシステム  
19   
 ファイル入出力  
43   
 ファイルの管理  
19   
 ファン  
10   
 フィンランド  
7(脚注20)   
 フェッチ  
13(脚注33)   
 フォルダ  
19   
 フォン・ノイマン型アーキテクチャ  
12   
 フォーマット指定子  
      
 %d  
44   
 複数行  
      
 リスト2.3 コメントの書き方(その1、複数行にわたって書く)  
36   
 複数行のコメント  
36   
 複数のソースファイル  
24(Coffee Break 1.3)   
 複数の変数を表示する  
47   
 フラグレジスタ  
13   
 フラッシュROM  
14   
17(脚注46)   
 フラッシュメモリ  
10   
 フリップフロップ  
14   
 フルHD  
8   
 物理メモリ  
19   
 ブラウン管  
8   
 ブレークポイント  
26   
 ブロック単位  
      
 ブロック単位でのコメント  
37   
 ブロック単位でのコメント  
37   
 文  
34   
      
 else 文  
50   
      
 if 文  
48   
      
 printf 文  
34   
      
 return 文  
35   
      
 代入文  
43   
 分岐完了  
15   
 分岐命令  
15   
 文の最後にセミコロンがない  
41   
 文法  
2   
20   
 ブートプログラム  
17(脚注47)   
 ブートローダー  
17(脚注47)   
 プリプロセス  
23(Coffee Break 1.3)   
 プリプロセッサ  
23(Coffee Break 1.3)   
 プログラミング  
2   
20   
30   
34   
      
 エラーメッセージ  
22   
      
 計算してみよう  
41   
      
 実行させてみよう  
27   
      
 ソースファイルを作る  
20   
      
 ディスプレイに表示する  
44   
      
 どのようにつくるのか考える  
20   
      
 プログラミングの学習  
30   
      
 プログラミングの進め方  
20   
      
 プログラムの内容を考える  
20   
 プログラミング言語  
2   
16   
      
 Basic  
2   
      
 C  
2   
      
 C#  
2   
      
 C++  
2   
      
 COBOL  
2   
      
 Fortran  
2   
      
 Java  
2   
      
 Lisp  
2   
      
 Pascal  
2   
      
 PL/I  
2   
      
 Prolog  
2   
      
 Python  
2   
      
 R  
2   
      
 Visual Basic  
2   
 プログラミングの学習  
30   
 プログラミングの進め方  
20   
 プログラミングの流れ  
34   
 プログラム  
2   
12   
16   
28   
34   
      
 CPUは同時に1つのプログラムしか実行できない  
18   
      
 Cプログラム実行までの手順  
24(図1.12)   
      
 OSの起動プログラム  
17   
      
 アセンブリプログラム  
16   
      
 機械語プログラム  
16   
22(図1.10)   
      
 コンピュータはプログラムに書かれたとおりに動作する  
26   
      
 シェルプログラム  
28   
      
 実行可能プログラム  
24(図1.12)   
      
 正常終了  
35   
      
 ソースファイルを作る  
20   
      
 大規模なプログラム  
6   
39   
      
 どのようにつくるのか考える  
20   
      
 ブートプログラム  
17(脚注47)   
      
 プログラムが死んだ  
26   
      
 プログラムが実行できるまで  
17   
      
 プログラムが実行できるようになるまで  
17   
      
 プログラムの切り替え  
18   
      
 プログラムの作成  
20   
      
 プログラムの実行  
20   
39   
      
 プログラムの実行が途中で停止してしまう  
41   
      
 プログラム実行の方法  
25   
      
 プログラムの動作環境  
27   
      
 プログラムの内容を考える  
20   
      
 プログラムの入出力  
27   
      
 プログラムのロード  
17   
      
 プログラムを多く読む  
20   
      
 プログラムを実行させる  
26   
 プログラムカウンタ  
13   
15   
 プログラムが死んだ  
26   
 プログラムが実行できるまで  
17   
 プログラムが実行できるようになるまで  
17   
 プログラムの切り替え  
18   
 プログラムの形式  
      
 if 文  
48   
      
 等号を使った条件式  
48   
 プログラムの作成  
20   
 プログラムの実行  
20   
39   
 プログラムの実行が途中で停止してしまう  
41   
 プログラム実行の方法  
25   
 プログラムの作り方  
      
 メッセージを表示する  
34   
 プログラムの動作環境  
27   
 プログラムの内容を考える  
20   
 プログラムの流れを変える  
48   
 プログラムの入出力  
27   
 プログラムのロード  
17   
 プログラムリスト  
      
 リスト1.1 2つの数を足し算するCプログラム  
20   
      
 リスト2.1 メッセージを表示するCプログラム  
34   
      
 リスト2.2 ソースコードの可読性を向上させるCプログラム  
35   
      
 リスト2.3 コメントの書き方(その1、複数行にわたって書く)  
36   
      
 リスト2.4 コメントの書き方(その2、命令文の後ろに書く)  
36   
      
 リスト2.5 コメントの書き方(その3、コンパイルエラーとなる例)  
37   
      
 リスト2.6 コメントの書き方(その4、//を使って書く)  
37   
      
 リスト2.7 コンパイルエラーとなる誤ったソースコード  
40   
      
 リスト2.8 キーボードからの入力  
43   
      
 リスト2.9 足し算のプログラム  
45   
      
 リスト2.10 四則演算のプログラム  
46   
      
 リスト2.11 2つの整数が割りきれる場合答えを表示するプログラム  
49   
      
 リスト2.12 割りきれない場合の処理を追加したプログラム  
50   
      
 リスト2.13 入力された値が0でないかチェックするプログラム  
51   
 プログラムを多く読む  
20   
 プログラムを実行させる  
26   
 プロセス  
18   
18   
19   
 プロセス間通信  
18   
19   
29   
 プロセッサ  
10   
12   
16   
 プロセッサメーカ  
17   
 プロンプト  
25(脚注62)   
26   
      
 $  
25(脚注62)   
      
 %(プロンプト)  
25(脚注62)   
      
 >(プロンプト)  
25(脚注62)   
               へ               
 ヘッダファイル  
23(Coffee Break 1.3)   
25(Coffee Break 1.4)   
      
 #defineディレクティブ  
27   
      
 #include<stdio.h>  
23(Coffee Break 1.3)   
34   
      
 標準入出力ライブラリ  
25(Coffee Break 1.4)   
 編集  
21   
 変数  
41   
42   
      
 参照  
43   
45   
      
 初期化  
45   
      
 初期値  
43   
      
 代入  
45   
      
 複数の変数を表示する  
47   
      
 変数への値の格納  
43   
      
 変数を用意する  
42   
      
 変数を利用する  
42   
      
 未定義である状態  
45   
 変数定義  
42   
45   
      
 double  
42   
      
 int  
42   
 変数への値の格納  
43   
 変数名  
42   
 変数を用意する  
42   
 変数を利用する  
42   
 米国規格協会(ANSI)  
7   
 ベル研究所  
7   
 ペタ  
11   
               ほ               
 補助記憶装置  
10   
19   
 保存  
21   
 翻訳  
21   
 ボールマウス  
9   
 ポインタ  
44   
               ま               
 マイナーアップデート  
8(脚注21)   
 マウス  
8   
9   
      
 光学マウス  
9   
      
 ボールマウス  
9   
 マクロ  
27   
 マザーボード  
9   
10   
17(脚注46)   
 マザーボードの写真  
9(図1.4)   
 マシン語  
16   
 マスクROM  
14(脚注39)   
 間違ったスペル  
22   
 マトリクス  
8   
 マルチタスクOS  
18   
19   
               み               
 未定義である状態  
45   
               む               
 虫  
3   
4   
4   
 無償  
25   
 無線接続  
9   
               め               
 メイク  
39   
 命令  
12   
16   
      
 命令の実行  
15   
      
 命令フェッチ  
15   
      
 ロード命令  
16   
 命令セット  
16   
 命令デコード  
15   
 命令の実行  
15   
 命令フェッチ  
13(脚注33)   
15   
15   
 命令文  
      
 リスト2.4 コメントの書き方(その2、命令文の後ろに書く)  
36   
 命令レジスタ  
13   
15   
 メイン部分  
34   
 メインボード  
9(脚注26)   
 メインメモリ  
18   
19   
 メガバイト  
11   
 メジャーアップデート  
8   
8(脚注21)   
 メッセージ  
24(図1.11)   
30   
      
 エラーメッセージ  
30   
 メッセージを表示する  
34   
 メッセージを表示するCプログラム  
34   
 メモリ  
9(図1.4)   
10   
12   
13   
13   
16   
      
 仮想メモリ  
18   
19   
      
 実メモリ  
18   
      
 物理メモリ  
19   
      
 メインメモリ  
18   
19   
      
 メモリ空間  
19   
      
 メモリ量  
19   
 メモリアクセス  
15   
15   
 メモリ空間  
14   
19   
 メモリの管理  
18   
 メモリの概念図  
13   
 メモリ量  
19   
 メモリを効率よく使う機能  
6   
               も               
 もし~ならば、~する  
48   
 もし~ならば、~する、そうでない場合は~する  
50   
 モジュール化  
6   
               ゆ               
 有線接続  
9   
               よ               
 予期せぬ状態  
26   
27   
 ヨタ  
11   
               ら               
 ライブラリ  
24(図1.12)   
25(Coffee Break 1.4)   
      
 数学ライブラリ  
25(Coffee Break 1.4)   
      
 標準入出力ライブラリ  
25(Coffee Break 1.4)   
28   
      
 ランタイムライブラリ  
25   
 ランタイムライブラリ  
25   
 ランダムアクセス  
14(脚注39)   
               り               
 リスト  
      
 リスト1.1 2つの数を足し算するCプログラム  
20   
      
 リスト2.1 メッセージを表示するCプログラム  
34   
      
 リスト2.2 ソースコードの可読性を向上させるCプログラム  
35   
      
 リスト2.3 コメントの書き方(その1、複数行にわたって書く)  
36   
      
 リスト2.4 コメントの書き方(その2、命令文の後ろに書く)  
36   
      
 リスト2.5 コメントの書き方(その3、コンパイルエラーとなる例)  
37   
      
 リスト2.6 コメントの書き方(その4、//を使って書く)  
37   
      
 リスト2.7 コンパイルエラーとなる誤ったソースコード  
40   
      
 リスト2.8 キーボードからの入力  
43   
      
 リスト2.9 足し算のプログラム  
45   
      
 リスト2.10 四則演算のプログラム  
46   
      
 リスト2.11 2つの整数が割りきれる場合答えを表示するプログラム  
49   
      
 リスト2.12 割りきれない場合の処理を追加したプログラム  
50   
      
 リスト2.13 入力された値が0でないかチェックするプログラム  
51   
 リスト1.1 2つの数を足し算するCプログラム  
20   
 リスト2.1 メッセージを表示するCプログラム  
34   
 リスト2.2 ソースコードの可読性を向上させるCプログラム  
35   
 リスト2.3 コメントの書き方(その1、複数行にわたって書く)  
36   
 リスト2.4 コメントの書き方(その2、命令文の後ろに書く)  
36   
 リスト2.5 コメントの書き方(その3、コンパイルエラーとなる例)  
37   
 リスト2.6 コメントの書き方(その4、//を使って書く)  
37   
 リスト2.7 コンパイルエラーとなる誤ったソースコード  
40   
 リスト2.8 キーボードからの入力  
43   
 リスト2.9 足し算のプログラム  
45   
 リスト2.10 四則演算のプログラム  
46   
 リスト2.11 2つの整数が割りきれる場合答えを表示するプログラム  
49   
 リスト2.12 割りきれない場合の処理を追加したプログラム  
50   
 リスト2.13 入力された値が0でないかチェックするプログラム  
51   
 リダイレクション  
28   
29   
 リダイレクト機能  
29   
 リンカ  
23(Coffee Break 1.3)   
24(図1.12)   
25   
 リンク  
24(Coffee Break 1.3)   
25(脚注63)   
38   
39   
      
 なぜコンパイルとリンクという工程が分かれているか  
39   
      
 リンクの実行コマンド  
39   
 リンクの実行コマンド  
39   
               れ               
 冷却  
10   
 レジスタ  
13   
14   
16   
      
 データレジスタ  
13   
      
 フラグレジスタ  
13   
      
 命令レジスタ  
13   
15   
      
 レジスタ書き込み  
16   
      
 レジスタ読み出し  
15   
 レジスタ書き込み  
16   
 レジスタ読み出し  
15   
               ろ               
 ロード  
15   
15(脚注43)   
17   
18   
      
 プログラムのロード  
17   
 ロード命令  
16   
 ロードモジュール  
17   
21   
               わ               
 割りきれない  
49   
 割りきれない場合の処理を追加したプログラム  
50   
 割りきれる  
49   
 ワークステーション  
7(脚注12)   
 ワーニング  
22(脚注61)   
               記号               
 |(パイプ)  
29