1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Cの基本的なやつの説明

Last updated at Posted at 2024-11-06

1. データ型 (Data Types)

C言語では、変数を定義する際に使用する基本的なデータ型があります。

  • 整数型 (Integer Types): 整数を扱います。

    • int: 整数型(通常、32ビット)
    • short: より小さい整数型(通常、16ビット)
    • long: より大きい整数型(通常、64ビット)
    • long long: より大きな整数型(通常、64ビット)
  • 浮動小数点型 (Floating Point Types): 小数を扱います。

    • float: 単精度浮動小数点型(通常、32ビット)
    • double: 倍精度浮動小数点型(通常、64ビット)
    • long double: 高精度浮動小数点型(プラットフォーム依存)
  • 文字型 (Character Type):

    • char: 1文字を格納する型(通常、1バイト)
  • 論理型 (Boolean Type):

    • bool (C99以降): true または false の真偽値(<stdbool.h>をインクルード)

2. 定数 (Constants)

  • 定数リテラル: 文字列や数値などの定数。

    • 10: 整数リテラル
    • 3.14: 浮動小数点リテラル
    • 'A': 文字リテラル
  • 定数定義 (#define): マクロ定義を行うためのもの。

    #define PI 3.14
    

3. 変数の宣言と初期化

C言語で変数を宣言し、値を格納する基本的な方法です。

int x;           // 整数型変数 x の宣言
x = 10;          // 変数 x に 10 を代入

int y = 20;      // 宣言と同時に初期化

4. 演算子 (Operators)

C言語では、さまざまな演算子を使って計算や比較を行います。

  • 算術演算子:

    • + (足し算)
    • - (引き算)
    • * (掛け算)
    • / (割り算)
    • % (余り)
  • 代入演算子:

    • = (代入)
    • +=, -=, *=, /=, %= (複合代入)
  • 比較演算子:

    • == (等しい)
    • != (等しくない)
    • <, >, <=, >= (大小比較)
  • 論理演算子:

    • && (論理積 AND)
    • || (論理和 OR)
    • ! (論理否定 NOT)
  • ビット演算子:

    • & (ビットAND)
    • | (ビットOR)
    • ^ (ビットXOR)
    • ~ (ビットNOT)
    • << (左シフト)
    • >> (右シフト)
  • インクリメント・デクリメント:

    • ++ (1増加)
    • -- (1減少)

5. 制御構造 (Control Structures)

C言語では、プログラムの流れを制御するための構造があります。

  • if文: 条件に基づいて処理を分岐させる。

    if (x > 10) {
        printf("xは10より大きいです");
    } else {
        printf("xは10以下です");
    }
    
  • switch文: 複数の選択肢の中から条件に一致するものを実行する。

    switch (x) {
        case 1:
            printf("xは1です");
            break;
        case 2:
            printf("xは2です");
            break;
        default:
            printf("xは1でも2でもありません");
    }
    
  • for文: 反復処理を行う。

    for (int i = 0; i < 10; i++) {
        printf("%d\n", i);
    }
    
  • while文: 条件が真の間繰り返す。

    while (x > 0) {
        printf("xは正の値です\n");
        x--;
    }
    
  • do-while文: 少なくとも1回は実行するループ。

    do {
        printf("xは少なくとも1回実行されます\n");
    } while (x > 0);
    

6. 関数 (Functions)

C言語では、関数を使ってプログラムを分割して管理します。

  • 関数の定義:

    int add(int a, int b) {
        return a + b;
    }
    
  • 関数の呼び出し:

    int result = add(5, 3); // add関数を呼び出す
    
  • main関数: Cプログラムのエントリーポイント

    int main() {
        printf("Hello, World!\n");
        return 0;
    }
    

7. ポインタ (Pointers)

C言語のポインタは、メモリ上のアドレスを格納する変数です。ポインタを使うことで、効率的にメモリを操作できます。

  • ポインタの宣言:

    int x = 10;
    int *p = &x;  // xのアドレスをポインタpに格納
    
  • ポインタの間接参照:

    printf("%d\n", *p);  // ポインタpが指す先の値を表示
    
  • ポインタと配列: 配列はポインタと密接に関連しています。

    int arr[5] = {1, 2, 3, 4, 5};
    int *ptr = arr;
    printf("%d\n", *(ptr + 2));  // 配列の3番目の要素(3)を表示
    

8. 構造体 (Structures)

構造体は、異なる型のデータをひとつにまとめて管理するために使います。

  • 構造体の定義:

    struct Person {
        char name[50];
        int age;
    };
    
  • 構造体変数の宣言と初期化:

    struct Person p1 = {"太郎", 25};
    
  • 構造体メンバーへのアクセス:

    printf("%sさんの年齢は%d歳です\n", p1.name, p1.age);
    

9. メモリ管理 (Memory Management)

動的メモリの確保と解放を行うための関数です。

  • malloc: メモリ領域を動的に確保する

    int *ptr = (int *)malloc(sizeof(int) * 5); // 5個分のint型メモリを確保
    
  • free: 確保したメモリを解放する

    free(ptr); // メモリ解放
    

10. ヘッダファイル (Header Files)

C言語には、多くの標準ライブラリがあり、必要に応じてインクルードします。

  • 標準ライブラリのインクルード:
    #include <stdio.h>  // 入出力関連
    #include <stdlib.h> // 標準ライブラリ
    #include <string.h> // 文字列操作
    

これで、C言語の基本的な要素についての解説を網羅しました。

1
0
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?