配置檔案:
a.txt 1
2
3
# ip=sadf
ip =192.168.246.22
dns = 218.85.157.99
讀取規則:
1 以『#』開頭的為注釋,不讀取
2 空行也不讀取
3 『=』兩邊可以有空格
這裡先講下要用到的知識點
1 斷言的使用
assert() 巨集用法
注意:assert是巨集,而不是函式。在c的
assert.h標頭檔案中。
assert巨集的原型定義在中,其作用是如果它的條件返回錯誤,則終止程式執行,原型定義:
#include void assert( int expression );
assert的作用是先計算表示式
expression,如果其值為假(即為0),那麼它先向標準錯誤流
stderr列印一條出錯資訊,然後通過呼叫
abort來終止程式執行;否則,assert()無任何作用。巨集assert()一般用於確認程式的正常操作,其中表示式構造無錯時才為真值。完成除錯後,不必從源**中刪除assert()語句,因為巨集ndebug有定義時,巨集assert()的定義為空。
2 strtok()--字串分割函式的使用
標頭檔案:#include
定義函式:char * strtok(char *s, const char *delim);
函式說明:strtok()用來將字串分割成乙個個片段.
引數s 指向欲分割的字串, 引數delim 則為分割字串,
當strtok()在引數s 的字串中發現到引數delim 的分割字元時則會將該字元改為\0 字元.
在第一次呼叫時,strtok()必需給予引數s 字串, 往後的呼叫則將引數s 設定成null.
每次呼叫成功則返回下乙個分割後的字串指標.
返回值:返回下乙個分割後的字串指標, 如果已無從分割則返回null.
接下來就是具體**了 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
#include
#include
#include
#include
#include
/* 刪除左邊的空格 */
char * del_left_trim(char *str)
/* 刪除兩邊的空格 */
char * del_both_trim(char * str)
/*主函式*/
int main(int argc, char **argv)
}
return
0;
}
檢視結果:
1
2
3
ip192.168.246.22
dns218.85.157.99
最基本的讀取配置檔案,就這樣了!
本文出自 「技術在於堅持」 部落格,請務必保留此出處
C 讀取配置檔案
1 首先引入標頭檔案 include 2 獲取應用程式的當前路徑 char buf 1000 getcurrentdirectory 1000,buf 得到當前工作路徑3 獲取配置檔案的路徑 char path 1024 definesysconfig config.ini sprintf path...
C 讀取配置檔案
1 利用系統介面,讀取ini配置檔案,詳情可查詢msdn。這裡做簡單宣告 宣告讀ini檔案的api函式 dllimport kernel32 private static extern int getprivateprofilestring string section,string key,str...
C讀取配置檔案
ifndef cfg op h define cfg op h ifdef cplusplus extern c endif endif define crt secure no warnings include include include define maxline 2048 獲取配置項 i...