函式名: labs
功 能: 取長整型絕對值
用 法: long labs(long n);
程式例:
#include <stdio.h> #include <math.h> int main(void) { long result; long x = -12345678L; result= labs(x); printf("number: %ld abs value: %ld\n", x, result); return 0; }
函式名: ldexp
功 能: 計算value*2的冪
用 法: double ldexp(double value, int exp);
程式例:
#include <stdio.h> #include <math.h> int main(void) { double value; double x = 2; /* ldexp raises 2 by a power of 3 then multiplies the result by 2 */ value = ldexp(x,3); printf("The ldexp value is: %lf\n", value); return 0; }
函式名: ldiv
功 能: 兩個長整型數相除, 返回商和餘數
用 法: ldiv_t ldiv(long lnumer, long ldenom);
程式例:
/* ldiv example */ #include <stdlib.h> #include <stdio.h> int main(void) { ldiv_t lx; lx = ldiv(100000L, 30000L); printf("100000 div 30000 = %ld remainder %ld\n", lx.quot, lx.rem); return 0; }
函式名: lfind
功 能: 執行線性搜尋
用 法: void *lfind(void *key, void *base, int *nelem, int width,
int (*fcmp)());
程式例:
#include <stdio.h> #include <stdlib.h> int compare(int *x, int *y) { return( *x - *y ); } int main(void) { int array[5] = {35, 87, 46, 99, 12}; size_t nelem = 5; int key; int *result; key = 99; result = lfind(&key, array, &nelem, sizeof(int), (int(*)(const void *,const void *))compare); if (result) printf("Number %d found\n",key); else printf("Number %d not found\n",key); return 0; }
函式名: line
功 能: 在指定兩點間畫一直線
用 法: void far line(int x0, int y0, int x1, int y1);
程式例:
#include <graphics.h> #include <stdlib.h> #include <stdio.h> #include <conio.h> int main(void) { /* request auto detection */ int gdriver = DETECT, gmode, errorcode; int xmax, ymax; /* initialize graphics and local variables */ initgraph(&gdriver, &gmode, ""); /* read result of initialization */ errorcode = graphresult(); /* an error occurred */ if (errorcode != grOk) { printf("Graphics error: %s\n", grapherrormsg(errorcode)); printf("Press any key to halt:"); getch(); exit(1); } setcolor(getmaxcolor()); xmax = getmaxx(); ymax = getmaxy(); /* draw a diagonal line */ line(0, 0, xmax, ymax); /* clean up */ getch(); closegraph(); return 0; }
函式名: linerel
功 能: 從當前位置點(CP)到與CP有一給定相對距離的點畫一直線
用 法: void far linerel(int dx, int dy);
程式例:
#include <graphics.h> #include <stdlib.h> #include <stdio.h> #include <conio.h> int main(void) { /* request auto detection */ int gdriver = DETECT, gmode, errorcode; char msg[80]; /* initialize graphics and local variables */ initgraph(&gdriver, &gmode, ""); /* read result of initialization */ errorcode = graphresult(); if (errorcode != grOk) { printf("Graphics error: %s\n", grapherrormsg(errorcode)); printf("Press any key to halt:"); getch(); exit(1); } /* move the C.P. to location (20, 30) */ moveto(20, 30); /* create and output a message at (20, 30) */ sprintf(msg, " (%d, %d)", getx(), gety()); outtextxy(20, 30, msg); /* draw a line to a point a relative distance away from the current value of C.P. */ linerel(100, 100); /* create and output a message at C.P. */ sprintf(msg, " (%d, %d)", getx(), gety()); outtext(msg); /* clean up */ getch(); closegraph(); return 0; }
函式名: localtime
功 能: 把日期和時間轉變為結構
用 法: struct tm *localtime(long *clock);
程式例:
#include <time.h> #include <stdio.h> #include <dos.h> int main(void) { time_t timer; struct tm *tblock; /* gets time of day */ timer = time(NULL); /* converts date/time to a structure */ tblock = localtime(&timer); printf("Local time is: %s", asctime(tblock)); return 0; }
函式名: lock
功 能: 設定檔案共享鎖
用 法: int lock(int handle, long offset, long length);
程式例:
#include <io.h> #include <fcntl.h> #include <sys\stat.h> #include <process.h> #include <share.h> #include <stdio.h> int main(void) { int handle, status; long length; /* Must have DOS Share.exe loaded for */ /* file locking to function properly */ handle = sopen("c:\\autoexec.bat", O_RDONLY,SH_DENYNO,S_IREAD); if (handle < 0) { printf("sopen failed\n"); exit(1); } length = filelength(handle); status = lock(handle,0L,length/2); if (status == 0) printf("lock succeeded\n"); else printf("lock failed\n"); status = unlock(handle,0L,length/2); if (status == 0) printf("unlock succeeded\n"); else printf("unlock failed\n"); close(handle); return 0; }
函式名: log
功 能: 對數函式ln(x)
用 法: double log(double x);
程式例:
#include <math.h> #include <stdio.h> int main(void) { double result; double x = 8.6872; result = log(x); printf("The natural log of %lf is %lf\n", x, result); return 0; }
函式名: log10
功 能: 對數函式log
用 法: double log10(double x);
程式例:
#include <math.h> #include <stdio.h> int main(void) { double result; double x = 800.6872; result = log10(x); printf("The common log of %lf is %lf\n", x, result); return 0; }
函式名: longjump
功 能: 執行非區域性轉移
用 法: void longjump(jmp_buf env, int val);
程式例:
#include <stdio.h> #include <setjmp.h> #include <stdlib.h> void subroutine(jmp_buf); int main(void) { int value; jmp_buf jumper; value = setjmp(jumper); if (value != 0) { printf("Longjmp with value %d\n", value); exit(value); } printf("About to call subroutine ... \n"); subroutine(jumper); return 0; } void subroutine(jmp_buf jumper) { longjmp(jumper,1); }
函式名: lowvideo
功 能: 選擇低亮度字元
用 法: void lowvideo(void);
程式例:
#include <conio.h> int main(void) { clrscr(); highvideo(); cprintf("High Intesity Text\r\n"); lowvideo(); gotoxy(1,2); cprintf("Low Intensity Text\r\n"); return 0; }
函式名: lrotl, _lrotl
功 能: 將無符號長整型數向左迴圈移位
用 法: unsigned long lrotl(unsigned long lvalue, int count);
unsigned long _lrotl(unsigned long lvalue, int count);
程式例:
/* lrotl example */ #include <stdlib.h> #include <stdio.h> int main(void) { unsigned long result; unsigned long value = 100; result = _lrotl(value,1); printf("The value %lu rotated left one bit is: %lu\n", value, result); return 0; }
函式名: lsearch
功 能: 線性搜尋
用 法: void *lsearch(const void *key, void *base, size_t *nelem,
size_t width, int (*fcmp)(const void *, const void *));
程式例:
#include <stdio.h> #include <stdlib.h> int compare(int *x, int *y) { return( *x - *y ); } int main(void) { int array[5] = {35, 87, 46, 99, 12}; size_t nelem = 5; int key; int *result; key = 99; result = lfind(&key, array, &nelem, sizeof(int), (int(*)(const void *,const void *))compare); if (result) printf("Number %d found\n",key); else printf("Number %d not found\n",key); return 0; }
函式名: lseek
功 能: 移動檔案讀/寫指標
用 法: long lseek(int handle, long offset, int fromwhere);
程式例:
#include <sys\stat.h> #include <string.h> #include <stdio.h> #include <fcntl.h> #include <io.h> int main(void) { int handle; char msg[] = "This is a test"; char ch; /* create a file */ handle = open("TEST.$$$", O_CREAT | O_RDWR, S_IREAD | S_IWRITE); /* write some data to the file */ write(handle, msg, strlen(msg)); /* seek to the begining of the file */ lseek(handle, 0L, SEEK_SET); /* reads chars from the file until we hit EOF */ do { read(handle, &ch, 1); printf("%c", ch); } while (!eof(handle)); close(handle); return 0; }
本文使用 書畫小說軟體 釋出,內容與軟體無關,書畫小說軟體 更愜意的讀、更舒心的寫、更輕鬆的釋出。