在C語言中,init函數通常用于初始化程序的一些全局或靜態變量。它是在程序啟動時自動調用的,主要用于執行一些初始化操作,例如設置默認值、分配內存、打開文件等。
init函數主要有兩種用法:
示例:
#include <stdio.h>
int global_var = 0;
void init() {
// 在全局變量初始化之前執行一些操作
printf("Performing initialization...\n");
global_var = 10;
}
int main() {
// 調用init函數
init();
// 輸出全局變量的值
printf("global_var = %d\n", global_var);
return 0;
}
輸出結果:
Performing initialization...
global_var = 10
示例:
#include <stdio.h>
void func() {
// 靜態變量的初始化是在函數第一次被調用時執行的
static int static_var = 0;
printf("static_var = %d\n", static_var);
}
void init() {
// 在靜態變量初始化之前執行一些操作
printf("Performing initialization...\n");
// 分配內存給靜態變量
func();
}
int main() {
// 調用init函數
init();
// 再次調用func函數
func();
return 0;
}
輸出結果:
Performing initialization...
static_var = 0
static_var = 0
需要注意的是,init函數的調用是在程序啟動時自動進行的,無需手動調用。并且,init函數的定義和聲明可以放在任何地方,但是為了保持代碼的可讀性,通常將其定義和聲明放在全局變量或靜態變量的定義之前。