溫馨提示×

c語言怎么定義不確定長度的數組

小億
216
2023-11-17 11:06:45
欄目: 編程語言

在C語言中,可以使用動態內存分配來定義不確定長度的數組。具體步驟如下:

  1. 首先,聲明一個指針變量,用來指向動態分配的內存空間。例如,int* arr;
  2. 使用malloc函數來動態分配內存空間。malloc函數需要傳入一個參數,表示要分配的內存空間的大小。例如,arr = (int*)malloc(sizeof(int) * n);,其中n為數組的長度。
  3. 使用分配的內存空間來存儲數據。例如,arr[0] = 1;,arr[1] = 2;,依此類推。
  4. 使用完數組后,記得釋放內存空間,以免造成內存泄漏。使用free函數來釋放內存空間。例如,free(arr);

完整示例代碼如下:

#include <stdio.h>
#include <stdlib.h>

int main() {
    int n;
    printf("請輸入數組的長度:");
    scanf("%d", &n);

    int* arr;
    arr = (int*)malloc(sizeof(int) * n);
    if (arr == NULL) {
        printf("內存分配失敗");
        return 1;
    }

    printf("請輸入數組元素:");
    for (int i = 0; i < n; i++) {
        scanf("%d", &arr[i]);
    }

    printf("數組元素為:");
    for (int i = 0; i < n; i++) {
        printf("%d ", arr[i]);
    }

    free(arr);

    return 0;
}

在上述示例中,首先通過用戶輸入獲取數組的長度。然后使用malloc函數動態分配內存空間,將返回的指針賦值給數組指針變量arr。接下來,用戶輸入數組元素,并輸出數組元素。最后,使用free函數釋放內存空間。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女