c語(yǔ)言函數(shù)資料 c 語(yǔ)言 函數(shù)

c語(yǔ)言中有哪些函數(shù)

C語(yǔ)言輸入輸出函數(shù)有很多,標(biāo)準(zhǔn)I/O函數(shù)中包含了如下幾個(gè)常用的函數(shù):

創(chuàng)新互聯(lián)公司是一家從事企業(yè)網(wǎng)站建設(shè)、做網(wǎng)站、網(wǎng)站建設(shè)、行業(yè)門(mén)戶(hù)網(wǎng)站建設(shè)、網(wǎng)頁(yè)設(shè)計(jì)制作的專(zhuān)業(yè)網(wǎng)站制作公司,擁有經(jīng)驗(yàn)豐富的網(wǎng)站建設(shè)工程師和網(wǎng)頁(yè)設(shè)計(jì)人員,具備各種規(guī)模與類(lèi)型網(wǎng)站建設(shè)的實(shí)力,在網(wǎng)站建設(shè)領(lǐng)域樹(shù)立了自己獨(dú)特的設(shè)計(jì)風(fēng)格。自公司成立以來(lái)曾獨(dú)立設(shè)計(jì)制作的站點(diǎn)上1000+。

scanf,printf,getc,putc,getchar,putchar,gets,puts,fgets,fputs,fgetc,fputc,fscanf,fprintf等.

int

getc(FILE

*fp)

getc主要是從文件中讀出一個(gè)字符.常用的判斷文件是否讀取結(jié)束的語(yǔ)句為

(ch

=

getc(fp))

!=

EOF.EOF為文件結(jié)束標(biāo)志,定義在stdio.h中,就像EXIT_SUCCESS,EXIT_FAILURE定義在stdlib.h中一樣,文件也可以被理解為一種流,所以當(dāng)fp為stdin時(shí),getc(stdin)就等同于getchar()了.

int

putc(int

ch,FILE

*fp)

putc主要是把字符ch寫(xiě)到文件fp中去.如果fp為stdout,則putc就等同于putchar()了.

int

getchar(void)

getchar主要是從標(biāo)準(zhǔn)輸入流讀取一個(gè)字符.默認(rèn)的標(biāo)準(zhǔn)輸入流即stdio.h中定義的stdin.但是從輸入流中讀取字符時(shí)又涉及到緩沖的問(wèn)題,所以并不是在屏幕中敲上一個(gè)字符程序就會(huì)運(yùn)行,一般是通過(guò)在屏幕上敲上回車(chē)鍵,然后將回車(chē)前的字符串放在緩沖區(qū)中,getchar就是在緩沖區(qū)中一個(gè)一個(gè)的讀字符.當(dāng)然也可以在while循環(huán)中指定終止字符,如下面的語(yǔ)句:while

((c

=

getchar())

!=

'#')這是以#來(lái)結(jié)束的.

int

putchar(int

ch)

putchar(ch)主要是把字符ch寫(xiě)到標(biāo)準(zhǔn)流stdout中去.

char

*

gets(char

*str)

gets主要是從標(biāo)準(zhǔn)輸入流讀取字符串并回顯,讀到換行符時(shí)退出,并會(huì)將換行符省去.

int

puts(char

*str)

puts主要是把字符串str寫(xiě)到標(biāo)準(zhǔn)流stdout中去,并會(huì)在輸出到最后時(shí)添加一個(gè)換行符.

char

*fgets(char

*str,

int

num,

FILE

*fp)

str是存放讀入的字符數(shù)組指針,num是最大允許的讀入字符數(shù),fp是文件指針.fgets的功能是讀一行字符,該行的字符數(shù)不大于num-1.因?yàn)閒gets函數(shù)會(huì)在末尾加上一個(gè)空字符以構(gòu)成一個(gè)字符串.另外fgets在讀取到換行符后不會(huì)將其省略.

int

fputs(char

*str,

file

*fp)

fputs將str寫(xiě)入fp.fputs與puts的不同之處是fputs在打印時(shí)并不添加換行符.

int

fgetc(FILE

*fp)

fgetc從fp的當(dāng)前位置讀取一個(gè)字符.

int

fputc(int

ch,

file

*fp)

fputc是將ch寫(xiě)入fp當(dāng)前指定位置.

int

fscanf(FILE

*fp,

char

*format,

輸入列表)

fscanf按照指定格式從文件中出讀出數(shù)據(jù),并賦值到參數(shù)列表中.

int

fprintf(FILE

*fp,

char

*format,

輸出列表)

fprintf將格式化數(shù)據(jù)寫(xiě)入流式文件中.

數(shù)據(jù)塊讀寫(xiě)函數(shù)

fread

(buffer,size,count,fp);

fwrite(buffer,size,count,fp);

參數(shù)說(shuō)明:

buffer:是一個(gè)指針。

對(duì)fread

來(lái)說(shuō),它是讀入數(shù)據(jù)的存放地址。

對(duì)fwrite來(lái)說(shuō),是要輸出數(shù)據(jù)的地址(均指起始地址)。

size:

要讀寫(xiě)的字節(jié)數(shù)。

count:

要進(jìn)行讀寫(xiě)多少個(gè)size字節(jié)的數(shù)據(jù)項(xiàng)。

fp:

文件型指針。

求C語(yǔ)言函數(shù)大全

函數(shù)名: abort

功 能: 異常終止一個(gè)進(jìn)程

用 法: void abort(void);

程序例:

#include stdio.h

#include stdlib.h

int main(void)

{

printf("Calling abort()\n");

abort();

return 0; /* This is never reached */

}

函數(shù)名: abs

功 能: 求整數(shù)的絕對(duì)值

用 法: int abs(int i);

程序例:

#include stdio.h

#include math.h

int main(void)

{

int number = -1234;

printf("number: %d absolute value: %d\n", number, abs(number));

return 0;

}

函數(shù)名: absread, abswirte

功 能: 絕對(duì)磁盤(pán)扇區(qū)讀、寫(xiě)數(shù)據(jù)

用 法: int absread(int drive, int nsects, int sectno, void *buffer);

int abswrite(int drive, int nsects, in tsectno, void *buffer);

程序例:

/* absread example */

#include stdio.h

#include conio.h

#include process.h

#include dos.h

int main(void)

{

int i, strt, ch_out, sector;

char buf[512];

printf("Insert a diskette into drive A and press any key\n");

getch();

sector = 0;

if (absread(0, 1, sector, buf) != 0)

{

perror("Disk problem");

exit(1);

}

printf("Read OK\n");

strt = 3;

for (i=0; i80; i++)

{

ch_out = buf[strt+i];

putchar(ch_out);

}

printf("\n");

return(0);

}

函數(shù)名: access

功 能: 確定文件的訪問(wèn)權(quán)限

用 法: int access(const char *filename, int amode);

程序例:

#include stdio.h

#include io.h

int file_exists(char *filename);

int main(void)

{

printf("Does NOTEXIST.FIL exist: %s\n",

file_exists("NOTEXISTS.FIL") ? "YES" : "NO");

return 0;

}

int file_exists(char *filename)

{

return (access(filename, 0) == 0);

}

函數(shù)名: acos

功 能: 反余弦函數(shù)

用 法: double acos(double x);

程序例:

#include stdio.h

#include math.h

int main(void)

{

double result;

double x = 0.5;

result = acos(x);

printf("The arc cosine of %lf is %lf\n", x, result);

return 0;

}

函數(shù)名: allocmem

功 能: 分配DOS存儲(chǔ)段

用 法: int allocmem(unsigned size, unsigned *seg);

程序例:

#include dos.h

#include alloc.h

#include stdio.h

int main(void)

{

unsigned int size, segp;

int stat;

size = 64; /* (64 x 16) = 1024 bytes */

stat = allocmem(size, segp);

if (stat == -1)

printf("Allocated memory at segment: %x\n", segp);

else

printf("Failed: maximum number of paragraphs available is %u\n",

stat);

return 0;

}

函數(shù)名: arc

功 能: 畫(huà)一弧線

用 法: void far arc(int x, int y, int stangle, int endangle, int radius);

程序例:

#include graphics.h

#include stdlib.h

#include stdio.h

#include conio.h

int main(void)

{

/* request auto detection */

int gdriver = DETECT, gmode, errorcode;

int midx, midy;

int stangle = 45, endangle = 135;

int radius = 100;

/* 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); /* terminate with an error code */

}

midx = getmaxx() / 2;

midy = getmaxy() / 2;

setcolor(getmaxcolor());

/* draw arc */

arc(midx, midy, stangle, endangle, radius);

/* clean up */

getch();

closegraph();

return 0;

}

函數(shù)名: asctime

功 能: 轉(zhuǎn)換日期和時(shí)間為ASCII碼

用 法: char *asctime(const struct tm *tblock);

程序例:

#include stdio.h

#include string.h

#include time.h

int main(void)

{

struct tm t;

char str[80];

/* sample loading of tm structure */

t.tm_sec = 1; /* Seconds */

t.tm_min = 30; /* Minutes */

t.tm_hour = 9; /* Hour */

t.tm_mday = 22; /* Day of the Month */

t.tm_mon = 11; /* Month */

t.tm_year = 56; /* Year - does not include century */

t.tm_wday = 4; /* Day of the week */

t.tm_yday = 0; /* Does not show in asctime */

t.tm_isdst = 0; /* Is Daylight SavTime; does not show in asctime */

/* converts structure to null terminated

string */

strcpy(str, asctime(t));

printf("%s\n", str);

return 0;

}

函數(shù)名: asin

功 能: 反正弦函數(shù)

用 法: double asin(double x);

程序例:

#include stdio.h

#include math.h

int main(void)

{

double result;

double x = 0.5;

result = asin(x);

printf("The arc sin of %lf is %lf\n", x, result);

return(0);

}

函數(shù)名: assert

功 能: 測(cè)試一個(gè)條件并可能使程序終止

用 法: void assert(int test);

程序例:

#include assert.h

#include stdio.h

#include stdlib.h

struct ITEM {

int key;

int value;

};

/* add item to list, make sure list is not null */

void additem(struct ITEM *itemptr) {

assert(itemptr != NULL);

/* add item to list */

}

int main(void)

{

additem(NULL);

return 0;

}

函數(shù)名: atan

功 能: 反正切函數(shù)

用 法: double atan(double x);

程序例:

#include stdio.h

#include math.h

int main(void)

{

double result;

double x = 0.5;

result = atan(x);

printf("The arc tangent of %lf is %lf\n", x, result);

return(0);

}

函數(shù)名: atan2

功 能: 計(jì)算Y/X的反正切值

用 法: double atan2(double y, double x);

程序例:

#include stdio.h

#include math.h

int main(void)

{

double result;

double x = 90.0, y = 45.0;

result = atan2(y, x);

printf("The arc tangent ratio of %lf is %lf\n", (y / x), result);

return 0;

}

函數(shù)名: atexit

功 能: 注冊(cè)終止函數(shù)

用 法: int atexit(atexit_t func);

程序例:

#include stdio.h

#include stdlib.h

void exit_fn1(void)

{

printf("Exit function #1 called\n");

}

void exit_fn2(void)

{

printf("Exit function #2 called\n");

}

int main(void)

{

/* post exit function #1 */

atexit(exit_fn1);

/* post exit function #2 */

atexit(exit_fn2);

return 0;

}

函數(shù)名: atof

功 能: 把字符串轉(zhuǎn)換成浮點(diǎn)數(shù)

用 法: double atof(const char *nptr);

程序例:

#include stdlib.h

#include stdio.h

int main(void)

{

float f;

char *str = "12345.67";

f = atof(str);

printf("string = %s float = %f\n", str, f);

return 0;

}

函數(shù)名: atoi

功 能: 把字符串轉(zhuǎn)換成長(zhǎng)整型數(shù)

用 法: int atoi(const char *nptr);

程序例:

#include stdlib.h

#include stdio.h

int main(void)

{

int n;

char *str = "12345.67";

n = atoi(str);

printf("string = %s integer = %d\n", str, n);

return 0;

}

函數(shù)名: atol

功 能: 把字符串轉(zhuǎn)換成長(zhǎng)整型數(shù)

用 法: long atol(const char *nptr);

程序例:

#include stdlib.h

#include stdio.h

int main(void)

{

long l;

char *str = "98765432";

l = atol(lstr);

printf("string = %s integer = %ld\n", str, l);

return(0);

}

C語(yǔ)言常用的函數(shù)有哪些

C語(yǔ)言庫(kù)函數(shù),常用庫(kù)函數(shù)有:

1、scanf格式輸入函數(shù)

2、printf格式輸出函數(shù)

3、systemdos命令函數(shù)

4、sort排序

5、main主函數(shù)

6、fgets文件讀取字符串函數(shù)

7、fputs文件寫(xiě)入字符串函數(shù)

8、fscanf文件格式讀取函數(shù)

9、fprintf文件格式寫(xiě)入函數(shù)

10、fopen打開(kāi)文件函數(shù)

11、getchar輸入字符函數(shù)

12、putchar輸出字符函數(shù)

13、malloc動(dòng)態(tài)申請(qǐng)內(nèi)存函數(shù)

14、free釋放內(nèi)存函數(shù)

15、abs求絕對(duì)值數(shù)學(xué)函數(shù)

16、sqrt求平方根數(shù)學(xué)函數(shù)

擴(kuò)展資料

語(yǔ)言組成:

1、數(shù)據(jù)類(lèi)型

C的數(shù)據(jù)類(lèi)型包括:整型、字符型、實(shí)型或浮點(diǎn)型(單精度和雙精度)、枚舉類(lèi)型、數(shù)組類(lèi)型、結(jié)構(gòu)體類(lèi)型、共用體類(lèi)型、指針類(lèi)型和空類(lèi)型。

2、常量與變量

常量其值不可改變,符號(hào)常量名通常用大寫(xiě)。

變量是以某標(biāo)識(shí)符為名字,其值可以改變的量。標(biāo)識(shí)符是以字母或下劃線開(kāi)頭的一串由字母、數(shù)字或下劃線構(gòu)成的序列,請(qǐng)注意第一個(gè)字符必須為字母或下劃線,否則為不合法的變量名。變量在編譯時(shí)為其分配相應(yīng)存儲(chǔ)單元。

3、數(shù)組

如果一個(gè)變量名后面跟著一個(gè)有數(shù)字的中括號(hào),這個(gè)聲明就是數(shù)組聲明。字符串也是一種數(shù)組。它們以ASCII的NULL作為數(shù)組的結(jié)束。要特別注意的是,方括內(nèi)的索引值是從0算起的。

4、指針

如果一個(gè)變量聲明時(shí)在前面使用 * 號(hào),表明這是個(gè)指針型變量。換句話說(shuō),該變量存儲(chǔ)一個(gè)地址,而 *(此處特指單目運(yùn)算符 * ,下同。C語(yǔ)言中另有 雙目運(yùn)算符 *) 則是取內(nèi)容操作符,意思是取這個(gè)內(nèi)存地址里存儲(chǔ)的內(nèi)容。指針是 C 語(yǔ)言區(qū)別于其他同時(shí)代高級(jí)語(yǔ)言的主要特征之一。

參考資料來(lái)源:百度百科-函數(shù)

網(wǎng)站標(biāo)題:c語(yǔ)言函數(shù)資料 c 語(yǔ)言 函數(shù)
瀏覽路徑:http://www.muchs.cn/article40/doeejeo.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站設(shè)計(jì)、云服務(wù)器Google、品牌網(wǎng)站設(shè)計(jì)、網(wǎng)站營(yíng)銷(xiāo)、關(guān)鍵詞優(yōu)化

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

網(wǎng)站建設(shè)網(wǎng)站維護(hù)公司