C語言讀取配置檔案

2021-06-23 04:24:37 字數 2629 閱讀 4158

配置檔案:

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)

}

return0;

}

檢視結果:

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...