思路:
比如linux中,以// 或/* 表示注釋,以=表示賦值。
從conf裡一行一行讀出來,如果第乙個字母是/,就忽略;
否則就從 line_of_file 裡查詢 「=」字元,(去掉行末』\n』換行符)
=之前的就是引數名,=之後的就是引數值(去掉空格,tab)(用strncpy)
實現:
#define _crt_secure_no_warnings
#include #include #include /*
#ipip:192.168.0.0.1
#port
port:8888
*//*讀取配置檔案*/
void test()
char line[1024] = ; //定義讀入的行陣列,1024行
while (!feof(fp))
int len = strlen(line);
/*查詢等於號的位置*/
char *equal = strchr(line, '=');
if (epual == null)
char key[64] = ;
char val[64] = ;
/*消除不必要的換行*/
int offset = 1;
if (line[len - 1] == '\n')
/*擷取key,val值*/
strncpy(key, line, pos - line);
strncpy(val, pos + 1, line + len - offset - pos);
printf("%s -> %s\n", key, val); }}
int main()
C語言讀取配置檔案
配置檔案 a.txt 1 2 3 ip sadf ip 192.168.246.22 dns 218.85.157.99 讀取規則 1 以 開頭的為注釋,不讀取 2 空行也不讀取 3 兩邊可以有空格 這裡先講下要用到的知識點 1 斷言的使用 assert 巨集用法 注意 assert是巨集,而不是函...
C語言實現簡單掃雷原始碼
掃雷是一款大家都熟知的小遊戲,今天我們將使用c語言實現乙個簡易版本的掃雷 1.保證第一次下子時,不被炸死 2.輸入的座標周圍沒雷,可以直接展開周圍的座標 3.輸入的座標周圍有雷時,應該顯示周圍有多少個雷 1.應該定義兩個陣列,乙個用來向玩家展示排雷的情況,乙個來存放雷 2.定義的陣列的大小,應該大於...
C 讀取配置檔案
1 首先引入標頭檔案 include 2 獲取應用程式的當前路徑 char buf 1000 getcurrentdirectory 1000,buf 得到當前工作路徑3 獲取配置檔案的路徑 char path 1024 definesysconfig config.ini sprintf path...