C言語のライブラリ関数とは?基本概念とstdio.hの主要関数一覧を徹底解説
Cライブラリ関数とは
ライブラリ関数とは、あらかじめ用意され、共通の場所である「ライブラリ」にまとめて格納されている組み込み関数のことです。
各関数はそれぞれ特定の処理を実行するように設計されており、プログラマは呼び出すだけで定義済みの動作や出力を利用できます。ゼロからコードを書く必要がないため、開発の効率と信頼性が大幅に向上します。
C言語の標準ライブラリ関数は、すべて複数のヘッダーファイル内で宣言されています。これらのライブラリ関数は、コンパイラが設計される段階で作成されています。
ヘッダーファイルを自分のCプログラムに取り込むには、#include<ファイル名.h>と記述します。プログラムのコンパイル・実行時に関連するヘッダーファイルが読み込まれ、そこで宣言された関数が利用可能になります。
主なヘッダーファイルとその役割
C言語で頻繁に使われる代表的なヘッダーファイルは以下のとおりです。
stdio.h − 標準入出力ヘッダーファイル。入出力関連の関数が宣言されています。
conio.h − コンソール入出力用のヘッダーファイルです。
string.h − 文字列操作に関するすべての関数が含まれています。
stdlib.h − Cプログラムで汎用的に使われる関数を収録しています。
math.h − 数学計算に関するすべての関数が含まれています。
time.h − 時刻や時計に関する関数を収録しています。
stdio.hに含まれる主な組み込み関数
ここでは、最も利用頻度の高いstdio.hに定義されている組み込み関数を一覧形式で紹介します。なお、SEEK_SET・SEEK_CUR・SEEK_ENDは関数ではなく、fseek()の第3引数として指定するマクロである点に注意してください。
| 番号 | 関数と説明 |
|---|---|
| 1 | printf() 文字、整数、浮動小数点数、文字列などの各種値を出力画面に表示します。 |
| 2 | scanf() キーボードからデータを読み取ります。 |
| 3 | getc() ファイルから1文字読み取ります。 |
| 4 | gets() キーボードから1行読み取ります。 |
| 5 | getchar() キーボードから1文字読み取ります。 |
| 6 | puts() 出力画面に1行書き出します。 |
| 7 | putchar() 画面に1文字出力します。 |
| 8 | fopen() ファイルを開きます。ファイル操作関連の関数はすべてstdio.hで定義されています。 |
| 9 | fclose() 開いたファイルを閉じます。 |
| 10 | getw() ファイルから整数を読み取ります。 |
| 11 | putw() ファイルに整数を書き込みます。 |
| 12 | fgetc() ファイルから1文字読み取ります。 |
| 13 | putc() ファイルに1文字書き込みます。 |
| 14 | fputc() ファイルに1文字書き込みます。 |
| 15 | fgets() ファイルから文字列を1行ずつ読み取ります。 |
| 16 | fputs() ファイルに文字列を書き込みます。 |
| 17 | feof() ファイルの終端(EOF)に達したかどうかを判定します。 |
| 18 | fgetchar() キーボードから1文字読み取ります。 |
| 19 | fprintf() 書式付きデータをファイルに書き込みます。 |
| 20 | fscanf() ファイルから書式付きデータを読み取ります。 |
| 21 | fputchar() 画面に1文字出力します。 |
| 22 | fseek() ファイルポインタを指定した位置へ移動します。 |
| 23 | SEEK_SET ファイルポインタをファイルの先頭へ移動させます。 |
| 24 | SEEK_CUR 現在位置を基準にファイルポインタを移動させます。 |
| 25 | SEEK_END ファイルポインタをファイルの末尾へ移動させます。 |
| 26 | ftell() ファイルポインタの現在位置を返します。 |
| 27 | rewind() ファイルポインタをファイルの先頭に戻します。 |
| 28 | sprintf() 書式付き出力を文字列に書き込みます。 |
| 29 | sscanf() 文字列から書式付き入力を読み取ります。 |
| 30 | remove() ファイルを削除します。 |
| 31 | fflush() ファイル(ストリーム)のバッファをフラッシュします。 |
まとめ
ライブラリ関数を活用すれば、入出力や文字列操作、数学計算といった定型的な処理を短いコードで実装できます。まずはstdio.hの基本的な関数から使い方を覚え、目的に応じてstring.hやmath.hなど他のヘッダーファイルも組み合わせて活用するとよいでしょう。
-
C言語の高レベルI/O関数とは?種類・構文・使い方を実例付きで徹底解説
I/Oとは、C言語における入力(Input)・出力(Output)関数のことを指します。ファイル操作を行う際には、大きく分けて「高レベルI/O」と「低レベルI/O」の2種類があり、それぞれ特徴や用途が異なります。本記事では、高レベルI/O関数の種類や構文、具体的な使い方をサンプルプログラムとともに詳しく解説します。 高レベルI/Oと低レベルI/Oの違い 高レベルI/O 人間にとって理解しやすい形式で入出力を行う。 最大の利点は移植性(ポータビリティ)の高さ。OSや環境に依存せずに動作する。 低レベルI/O コンピュータ(ハードウェア)にとって理解しやすい形式で入出力を行う。 利点は実行時
-
C言語の関数の分類とは?引数と戻り値による4つのカテゴリを解説
C言語における関数は、引数(ひきすう)の有無と戻り値(返り値)の有無という2つの観点から、以下の4つのカテゴリに分類できます。引数なし・戻り値なしの関数引数なし・戻り値ありの関数引数あり・戻り値なしの関数引数あり・戻り値ありの関数それぞれのカテゴリについて、サンプルコードと実行結果を交えながら詳しく見ていきましょう。1. 引数なし・戻り値なしの関数このタイプの関数は、呼び出し元からデータを受け取らず、計算結果も返しません。関数内で入力・処理・表示をすべて完結させるため、単純な処理に向いています。サンプルコード#include<stdio.h>main() {