首页 > 代码库 > C语言函数 --C

C语言函数 --C





函数名: cabs

功 能: 计算复数的绝对值

用 法: double cabs(struct complex z);

程序例:

#include <stdio.h> 
#include <math.h> 
int main(void) 
{ 
   struct complex z; 
   double val; 
   z.x = 2.0; 
   z.y = 1.0; 
   val = cabs(z); 
   printf("The absolute value of %.2lfi %.2lfj is %.2lf", z.x, z.y, val); 
   return 0; 
} 
  
  
  

函数名: calloc

功 能: 分配主存储器

用 法: void *calloc(size_t nelem, size_t elsize);

程序例:

#include <stdio.h> 
#include <alloc.h> 
int main(void) 
{ 
   char *str = NULL; 
   /* allocate memory for string */ 
   str = calloc(10, sizeof(char)); 
   /* copy "Hello" into string */ 
   strcpy(str, "Hello"); 
   /* display string */ 
   printf("String is %s\n", str); 
   /* free memory */ 
   free(str); 
   return 0; 
} 
  
  
  

函数名: ceil

功 能: 向上舍入

用 法: double ceil(double x);

程序例:

#include <math.h> 
#include <stdio.h> 
int main(void) 
{ 
   double number = 123.54; 
   double down, up; 
   down = floor(number); 
   up = ceil(number); 
   printf("original number     %5.2lf\n", number); 
   printf("number rounded down %5.2lf\n", down); 
   printf("number rounded up   %5.2lf\n", up); 
   return 0; 
} 
  
  
  

函数名: cgets

功 能: 从控制台读字符串

用 法: char *cgets(char *str);

程序例:

#include <stdio.h> 
#include <conio.h> 
int main(void) 
{ 
   char buffer[83]; 
   char *p; 
   /* There‘s space for 80 characters plus the NULL terminator */ 
   buffer[0] = 81; 
   printf("Input some chars:"); 
   p = cgets(buffer); 
   printf("\ncgets read %d characters: \"%s\"\n", buffer[1], p); 
   printf("The returned pointer is %p, buffer[0] is at %p\n", p, &buffer); 
   /* Leave room for 5 characters plus the NULL terminator */ 
   buffer[0] = 6; 
   printf("Input some chars:"); 
   p = cgets(buffer); 
   printf("\ncgets read %d characters: \"%s\"\n", buffer[1], p); 
   printf("The returned pointer is %p, buffer[0] is at %p\n", p, &buffer); 
   return 0; 
} 
  
  
  

函数名: chdir

功 能: 改变工作目录

用 法: int chdir(const char *path);

程序例:

#include <stdio.h> 
#include <stdlib.h> 
#include <dir.h> 
char old_dir[MAXDIR]; 
char new_dir[MAXDIR]; 
int main(void) 
{ 
   if (getcurdir(0, old_dir)) 
   { 
      perror("getcurdir()"); 
      exit(1); 
   } 
   printf("Current directory is: \\%s\n", old_dir); 
   if (chdir("\\")) 
   { 
      perror("chdir()"); 
      exit(1); 
   } 
   if (getcurdir(0, new_dir)) 
   { 
      perror("getcurdir()"); 
      exit(1); 
   } 
   printf("Current directory is now: \\%s\n", new_dir); 
   printf("\nChanging back to orignal directory: \\%s\n", old_dir); 
   if (chdir(old_dir)) 
   { 
      perror("chdir()"); 
      exit(1); 
   } 
   return 0; 
} 
  
  

函数名: _chmod, chmod

功 能: 改变文件的访问方式

用 法: int chmod(const char *filename, int permiss);

程序例:

#include <sys\stat.h> 
#include <stdio.h> 
#include <io.h> 
void make_read_only(char *filename); 
int main(void) 
{ 
   make_read_only("NOTEXIST.FIL"); 
   make_read_only("MYFILE.FIL"); 
   return 0; 
} 
void make_read_only(char *filename) 
{ 
   int stat; 
   stat = chmod(filename, S_IREAD); 
   if (stat) 
      printf("Couldn‘t make %s read-only\n", filename); 
   else 
      printf("Made %s read-only\n", filename); 
} 
  
  
  

函数名: chsize

功 能: 改变文件大小

用 法: int chsize(int handle, long size);

程序例:

#include <string.h> 
#include <fcntl.h> 
#include <io.h> 
int main(void) 
{ 
   int handle; 
   char buf[11] = "0123456789"; 
   /* create text file containing 10 bytes */ 
   handle = open("DUMMY.FIL", O_CREAT); 
   write(handle, buf, strlen(buf)); 
   /* truncate the file to 5 bytes in size */ 
   chsize(handle, 5); 
   /* close the file */ 
   close(handle); 
   return 0; 
} 
  
  

函数名: circle

功 能: 在给定半径以(x, y)为圆心画圆

用 法: void far circle(int x, int y, 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 radius = 100; 
   /* initialize graphics and local variables */ 
   initgraph(&gdriver, &gmode, ""); 
   /* read result of initialization */ 
   errorcode = graphresult(); 
   if (errorcode != grOk)  /* an error occurred */ 
   { 
      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 the circle */ 
   circle(midx, midy, radius); 
   /* clean up */ 
   getch(); 
   closegraph(); 
   return 0; 
} 
  
  
  

函数名: cleardevice

功 能: 清除图形屏幕

用 法: void far cleardevice(void);

程序例:

#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; 
   /* initialize graphics and local variables */ 
   initgraph(&gdriver, &gmode, ""); 
   /* read result of initialization */ 
   errorcode = graphresult(); 
   if (errorcode != grOk)  /* an error occurred */ 
   { 
      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()); 
   /* for centering screen messages */ 
   settextjustify(CENTER_TEXT, CENTER_TEXT); 
   /* output a message to the screen */ 
   outtextxy(midx, midy, "press any key to clear the screen:"); 
   /* wait for a key */ 
   getch(); 
   /* clear the screen */ 
   cleardevice(); 
   /* output another message */ 
   outtextxy(midx, midy, "press any key to quit:"); 
   /* clean up */ 
   getch(); 
   closegraph(); 
   return 0; 
} 
  
  
  

函数名: clearerr

功 能: 复位错误标志

用 法:void clearerr(FILE *stream);

程序例:

#include <stdio.h> 
int main(void) 
{ 
   FILE *fp; 
   char ch; 
   /* open a file for writing */ 
   fp = fopen("DUMMY.FIL", "w"); 
   /* force an error condition by attempting to read */ 
   ch = fgetc(fp); 
   printf("%c\n",ch); 
   if (ferror(fp)) 
   { 
      /* display an error message */ 
      printf("Error reading from DUMMY.FIL\n"); 
      /* reset the error and EOF indicators */ 
      clearerr(fp); 
   } 
   fclose(fp); 
   return 0; 
} 
  
  
  

函数名: clearviewport

功 能: 清除图形视区

用 法: void far clearviewport(void);

程序例:

#include <graphics.h> 
#include <stdlib.h> 
#include <stdio.h> 
#include <conio.h> 
#define CLIP_ON 1   /* activates clipping in viewport */ 
int main(void) 
{ 
   /* request auto detection */ 
   int gdriver = DETECT, gmode, errorcode; 
   int ht; 
   /* initialize graphics and local variables */ 
   initgraph(&gdriver, &gmode, ""); 
   /* read result of initialization */ 
   errorcode = graphresult(); 
   if (errorcode != grOk)  /* an error occurred */ 
   { 
      printf("Graphics error: %s\n", grapherrormsg(errorcode)); 
      printf("Press any key to halt:"); 
      getch(); 
      exit(1); /* terminate with an error code */ 
   } 
   setcolor(getmaxcolor()); 
   ht = textheight("W"); 
   /* message in default full-screen viewport */ 
   outtextxy(0, 0, "* <-- (0, 0) in default viewport"); 
   /* create a smaller viewport */ 
   setviewport(50, 50, getmaxx()-50, getmaxy()-50, CLIP_ON); 
   /* display some messages */ 
   outtextxy(0, 0, "* <-- (0, 0) in smaller viewport"); 
   outtextxy(0, 2*ht, "Press any key to clear viewport:"); 
   /* wait for a key */ 
   getch(); 
   /* clear the viewport */ 
   clearviewport(); 
   /* output another message */ 
   outtextxy(0, 0, "Press any key to quit:"); 
   /* clean up */ 
   getch(); 
   closegraph(); 
   return 0; 
} 
  
  
  

函数名: _close, close

功 能: 关闭文件句柄

用 法: int close(int handle);

程序例:

#include <string.h> 
#include <stdio.h> 
#include <fcntl.h> 
#include <io.h> 
main() 
{ 
   int handle; 
   char buf[11] = "0123456789"; 
   /* create a file containing 10 bytes */ 
   handle = open("NEW.FIL", O_CREAT); 
   if (handle > -1) 
   { 
       write(handle, buf, strlen(buf)); 
       /* close the file */ 
       close(handle); 
   } 
   else 
   { 
       printf("Error opening file\n"); 
   } 
   return 0; 
} 
  
  
  

函数名: clock

功 能: 确定处理器时间

用 法: clock_t clock(void);

程序例:

#include <time.h> 
#include <stdio.h> 
#include <dos.h> 
int main(void) 
{ 
   clock_t start, end; 
   start = clock(); 
   delay(2000); 
   end = clock(); 
   printf("The time was: %f\n", (end - start) / CLK_TCK); 
   return 0; 
} 
  
  
  

函数名: closegraph

功 能: 关闭图形系统

用 法: void far closegraph(void);

程序例:

#include <graphics.h> 
#include <stdlib.h> 
#include <stdio.h> 
#include <conio.h> 
int main(void) 
{ 
   /* request auto detection */ 
   int gdriver = DETECT, gmode, errorcode; 
   int x, y; 
   /* initialize graphics mode */ 
   initgraph(&gdriver, &gmode, ""); 
   /* read result of initialization */ 
   errorcode = graphresult(); 
   if (errorcode != grOk)  /* an error 
      occurred */ 
   { 
      printf("Graphics error: %s\n", grapherrormsg(errorcode)); 
      printf("Press any key to halt:"); 
      getch(); 
      exit(1); /* terminate with an error code */ 
   } 
   x = getmaxx() / 2; 
   y = getmaxy() / 2; 
   /* output a message */ 
   settextjustify(CENTER_TEXT, CENTER_TEXT); 
   outtextxy(x, y, "Press a key to close the graphics system:"); 
   /* wait for a key */ 
   getch(); 
   /* closes down the graphics system */ 
   closegraph(); 
   printf("We‘re now back in text mode.\n"); 
   printf("Press any key to halt:"); 
   getch(); 
   return 0; 
} 
  
  
  

函数名: clreol

功 能: 在文本窗口中清除字符到行末

用 法: void clreol(void);

程序例:

#include <conio.h> 
int main(void) 
{ 
   clrscr(); 
   cprintf("The function CLREOL clears all characters from the\r\n"); 
   cprintf("cursor position to the end of the line within the\r\n"); 
   cprintf("current text window, without moving the cursor.\r\n"); 
   cprintf("Press any key to continue . . ."); 
   gotoxy(14, 4); 
   getch(); 
   clreol(); 
   getch(); 
   return 0; 
} 
  
  
  

函数名: clrscr

功 能: 清除文本模式窗口

用 法: void clrscr(void);

程序例:

#include <conio.h> 
int main(void) 
{ 
   int i; 
   clrscr(); 
   for (i = 0; i < 20; i++) 
      cprintf("%d\r\n", i); 
   cprintf("\r\nPress any key to clear screen"); 
   getch(); 
   clrscr(); 
   cprintf("The screen has been cleared!"); 
   getch(); 
   return 0; 
} 
  
  
  

函数名: coreleft

功 能: 返回未使用内存的大小

用 法: unsigned coreleft(void);

程序例:

#include <stdio.h> 
#include <alloc.h> 
int main(void) 
{ 
   printf("The difference between the highest allocated block and\n"); 
   printf("the top of the heap is: %lu bytes\n", (unsigned long) coreleft()); 
   return 0; 
} 
  

函数名: cos

功 能: 余弦函数

用 法: double cos(double x);

程序例:

#include <stdio.h> 
#include <math.h> 
int main(void) 
{ 
   double result; 
   double x = 0.5; 
   result = cos(x); 
   printf("The cosine of %lf is %lf\n", x, result); 
   return 0; 
} 
  
  
  

函数名: cosh

功 能: 双曲余弦函数

用 法: dluble cosh(double x);

程序例:

#include <stdio.h> 
#include <math.h> 
int main(void) 
{ 
   double result; 
   double x = 0.5; 
   result = cosh(x); 
   printf("The hyperboic cosine of %lf is %lf\n", x, result); 
   return 0; 
} 
  
  
  

函数名: country

功 能: 返回与国家有关的信息

用 法: struct COUNTRY *country(int countrycode, struct country *country);

程序例:

#include <dos.h> 
#include <stdio.h> 
#define USA 0 
int main(void) 
{ 
   struct COUNTRY country_info; 
   country(USA, &country_info); 
   printf("The currency symbol for the USA is: %s\n", 
           country_info.co_curr); 
   return 0; 
} 
  
  
  

函数名: cprintf

功 能: 送格式化输出至屏幕

用 法: int cprintf(const char *format[, argument, ...]);

程序例:

#include <conio.h> 
int main(void) 
{ 
   /* clear the screen */ 
   clrscr(); 
   /* create a text window */ 
   window(10, 10, 80, 25); 
   /* output some text in the window */ 
   cprintf("Hello world\r\n"); 
   /* wait for a key */ 
   getch(); 
   return 0; 
} 
  
  
  

函数名: cputs

功 能: 写字符到屏幕

用 法: void cputs(const char *string);

程序例:

#include <conio.h> 
int main(void) 
{ 
   /* clear the screen */ 
   clrscr(); 
   /* create a text window */ 
   window(10, 10, 80, 25); 
   /* output some text in the window */ 
   cputs("This is within the window\r\n"); 
   /* wait for a key */ 
   getch(); 
   return 0; 
} 
  
  
  

函数名: _creat creat

功 能: 创建一个新文件或重写一个已存在的文件

用 法: int creat (const char *filename, int permiss);

程序例:

#include <sys\stat.h> 
#include <string.h> 
#include <fcntl.h> 
#include <io.h> 
int main(void) 
{ 
   int handle; 
   char buf[11] = "0123456789"; 
   /* change the default file mode from text to binary */ 
   _fmode = O_BINARY; 
   /* create a binary file for reading and writing */ 
   handle = creat("DUMMY.FIL", S_IREAD | S_IWRITE); 
   /* write 10 bytes to the file */ 
   write(handle, buf, strlen(buf)); 
   /* close the file */ 
   close(handle); 
   return 0; 
} 
  

函数名: creatnew

功 能: 创建一个新文件

用 法: int creatnew(const char *filename, int attrib);

程序例:

#include <string.h> 
#include <stdio.h> 
#include <errno.h> 
#include <dos.h> 
#include <io.h> 
int main(void) 
{ 
   int handle; 
   char buf[11] = "0123456789"; 
   /* attempt to create a file that doesn‘t already exist */ 
   handle = creatnew("DUMMY.FIL", 0); 
   if (handle == -1) 
      printf("DUMMY.FIL already exists.\n"); 
   else 
   { 
      printf("DUMMY.FIL successfully created.\n"); 
      write(handle, buf, strlen(buf)); 
      close(handle); 
   } 
   return 0; 
} 
  
  
  

函数名: creattemp

功 能: 创建一个新文件或重写一个已存在的文件

用 法: int creattemp(const char *filename, int attrib);

程序例:

#include <string.h> 
#include <stdio.h> 
#include <io.h> 
int main(void) 
{ 
   int handle; 
   char pathname[128]; 
   strcpy(pathname, "\\"); 
   /* create a unique file in the root directory */ 
   handle = creattemp(pathname, 0); 
   printf("%s was the unique file created.\n", pathname); 
   close(handle); 
   return 0; 
} 
  
  
  

函数名: cscanf

功 能: 从控制台执行格式化输入

用 法: int cscanf(char *format[,argument, ...]);

程序例:

#include <conio.h> 
int main(void) 
{ 
   char string[80]; 
   /* clear the screen */ 
   clrscr(); 
   /* Prompt the user for input */ 
   cprintf("Enter a string with no spaces:"); 
   /* read the input */ 
   cscanf("%s", string); 
   /* display what was read */ 
   cprintf("\r\nThe string entered is: %s", string); 
   return 0; 
} 
  
  
  

函数名: ctime

功 能: 把日期和时间转换为字符串

用 法: char *ctime(const time_t *time);

程序例:

#include <stdio.h> 
#include <time.h> 
int main(void) 
{ 
   time_t t; 
   time(&t); 
   printf("Today‘s date and time: %s\n", ctime(&t)); 
   return 0; 
} 
  
  
  

函数名: ctrlbrk

功 能: 设置Ctrl-Break处理程序

用 法: void ctrlbrk(*fptr)(void);

程序例:

#include <stdio.h> 
#include <dos.h> 
#define ABORT 0 
int c_break(void) 
{ 
   printf("Control-Break pressed.  Program aborting ...\n"); 
   return (ABORT); 
} 
int main(void) 
{ 
   ctrlbrk(c_break); 
   for(;;) 
   { 
      printf("Looping... Press <Ctrl-Break> to quit:\n"); 
   } 
   return 0; 
} 
  
  
  
  




  书画小说软件 制作更惬意的读、更舒心的写、更轻松的发布

C语言函数 --C