#include
#include
#include
#define abs(x) (x < 0 ? x * -1 : x)
intprintf
(char
*fmt,..
.);char tem[
1024]=
;char
*p1,
*p2,
*p3,ch;
/*可變第一引數指向ap*/
va_start
(ap,fmt)
;/*複製格式化資料到buf*/
strcpy
(buf,fmt)
;/*將格式化資料寫到檔案*/
fputs
(fmt,fp)
;rewind
(fp)
; p1 = buf;
while
((ch =
fgetc
(fp))!=
eof)
len = ch ==
'c'?1:
strlen
(p2)
;/*格式字元長度*/
if(num >0&&
abs(num)
- len >0)
if(ch ==
'c')
*p1++
=va_arg
(ap,
int)
;/*字元型的插入*/
else
while
(*p2)
*p1++
=*p2++
;/*插入格式化字元*/
if(num <0&&
abs(num)
- len >0)
}else
}*p1 =
'\0'
;/* 末尾新增 '\0' */
fclose
(fp)
;/*關閉檔案*/
remove
("temp.txt");
/*刪除檔案*/
C語言實現簡單的HashTble
標頭檔案中的原始定義 ifndef helpsep h define mintablesize 1 typedef char elementtype struct listnode typedef struct listnode position struct hashtbl typedef str...
簡單echo server的C語言實現
下決心要重新梳理一下網路的相關知識,計畫要熟悉tcpdump工具以及linux網路程式設計,尤其是要把同步非同步,阻塞非阻塞那塊弄清楚,如果可能的話,熟悉一下libuv這樣的庫。本週參照網上資料的 實現了乙個簡單echo server,從socket中讀取資料並且寫回,用telnet測試後發現成功,...
C語言實現printf函式,即引數可變函式原理
我們在c語言程式設計中會遇到一些引數個數可變的函式,例如printf 這個函式,它的定義是這樣的 int printf const char format,它除了有乙個引數format固定以外,後面跟的引數的個數和型別是 可變的,例如我們可以有以下不同的呼叫方法 printf d i printf ...