long double value %.4Lf is %.4Lf", xL, cbrtl(xL)); return 0;}1.3 运行结果2. ceil,ceilf,ceill2.1 函数说明函数声明函数功能 [x = %.4Lf] is %.4Lf", xL, ceill(xL)); return 0;}2.3 运行结果3. copysign,copysignf,copysignl3.1 函数说明函数声明函数功能 Couldn't make %s read-only\n", filename); else printf("Made %s read-only\n", filename);}5.3 运行结果6. chsize6.1 函数说明函数声明函数功能 int chsize(int handle, long size);改变文件大小 参数:handle : 文件句柄,表示要改变大小的文件。 temp.txt", "w"); /* force an error condition by attempting to read */ ch = fgetc(fp); printf("%c\
);把字符串转换成整型数long atol(const char *nptr);把字符串转换成长整型数 1. abort1.1 函数说明函数声明函数功能 void abort(void);异常终止一个进程注意 4.2 演示示例#include <dos.h>#include <stdio.h>unsigned char buff[512];int main(){ int i; char c; ; printf("\nInsert a diskette for drive A:\n"); printf("and press ENTER when ready. . ."); c= "NO"); return 0;}int file_exists(char *filename){ return (access(filename, 0) == 0);}5.3 运行结果6. acos6.1 函数说明函数声明函数功能 double acos(double x);反余弦函数6.2 演示示例#include <stdio.h>#include <math.h>int main(
总览函数声明函数功能 int raise(int sig);用于向当前进程发送指定的信号。 2.3 运行结果3. read3.1 函数说明函数声明函数功能 ssize_t read(int fd, void *buf, size_t count);用于从文件描述符读取数据的函数。 () / 2 + 50; rectangle(left,top,right,bottom); getch(); closegraph(); return 0;}5.3 运行结果6. BGI 驱动程序主要用于支持 Borland C++ 等 IDE 环境下的图形绘制和显示操作,它们通常存储在一个单独的库文件中,例如 graphics.h 头文件需要使用的 BGI driver 位于 10.3 运行结果11. rmdir11.1 函数说明函数声明函数功能 int rmdir(const char *path);用于删除一个空目录,即该目录必须为空。
int putc(int c, FILE *stream);它是标准 I/O 库中定义的函数,用于将一个字符输出到指定的文件流。 int putchar(int c);它是标准 I/O 库中定义的函数,用于将一个字符输出到标准输出流(通常是控制台窗口)。int putenv(char *string);用于设置环境变量的值。 \n"); char name[20] = "Huazie"; printf("My name is %s", name); return 0;}5.3 运行结果6. pthread_create 7.3 运行结果8. putc8.1 函数说明函数声明函数功能 int putc(int c, FILE *stream);它是标准 I/O 库中定义的函数,用于将一个字符输出到指定的文件流。 8.3 运行结果9. putchar9.1 函数说明函数声明函数功能 int putchar(int c);它是标准 I/O 库中定义的函数,用于将一个字符输出到标准输出流(通常是控制台窗口)。
此外,如果两个参数中有一个或两个都是负数,则商和余数的计算规则将根据 C 标准进行调整。 size, int (*compar)(const void *, const void *));它是标准 C 库函数 <search.h> 中的一个函数,用于在一个数组中查找指定元素。 8.3 运行结果9. lock9.1 函数说明函数声明函数功能 int lock(int fd, int cmd, off_t len);它是标准 C 库函数 <fcntl.h> 中的一个函数,用于对文件进行加锁或解锁操作 const void *b){ return *(int *)a - *(int *)b;}int main(){ int arr[] = { 3, 1, 4, 1, 5, 9, 2, 6, \n", key); } return 0;}上述示例程序中,首先定义了一个整型数组 arr 并初始化为 { 3, 1, 4, 1, 5, 9, 2, 6, 5 }。
printf("Read character: %c\n", c); // 推回字符到输入流中 if (ungetc(c, fp) == EOF) { printf n", c); fclose(fp); return 0;}在上面的示例代码中,我们首先打开了一个名为 test.txt 的文本文件;接着,使用 fgetc() 函数从中读取一个字符;然后, 2.3 运行结果3. ungetch3.1 函数说明函数声明函数功能 int ungetch(int c);用于将字符推回输入流中 参数:c : 要推回的字符3.2 演示示例#include <stdio.h prev = c; continue; } fputc(c, out); prev = c; } fclose(in); 5.3 运行结果6. unlock6.1 函数说明函数声明函数功能 int unlock(int handle, long offset, long length);它不是标准 C 库中的函数,而是 Linux
// 否则就是磁盘错误 drive = ax & 0x00FF; errorno = di & 0x00FF; sprintf(msg, "Error: %s on drive %c\ 不过需要留意,conio.h 并非标准 C 库的一部分,它主要在像 Turbo C 这类旧的编译器中使用,而在现代开发环境里可能不被支持。 5. hcreate,hcreate_r5.1 函数说明函数声明函数功能 int hcreate(size_t nel);根据条目数创建哈希表。 (int)(ep->data) : 0); } hdestroy(); exit(EXIT_SUCCESS);}6. hsearch,hsearch_r6.1 函数说明函数声明函数功能 API Reference Document][highvideo][hcreate,hsearch,hdestroy,hcreate_r,hsearch_r,hdestroy_r][UTILS-标准C库
总览函数声明函数功能 double j0 (double x);计算 x 的 第一类 0 阶贝塞尔函数(double) float j0f (float x);计算 x 的 第一类 0 阶贝塞尔函数(float 1.2 函数说明函数声明函数功能 double j0 (double x);计算 x 的 第一类 0 阶贝塞尔函数(double) float j0f (float x);计算 x 的 第一类 0 阶贝塞尔函数 5. join5.1 函数说明函数声明函数功能 int join(pthread_t thread, void **retval);等待线程退出并回收资源在 C 语言中,join 函数不是标准库函数,也不是 6. jmp_buf6.1 类型说明类型定义描述 typedef _JBTYPE jmp_buf[_JBLEN];它是一个数组类型,保存跳转目标地址的缓冲区。 参考[MATH-标准C库]《Linux内核API完全参考手册》
// 执行成功,这里不会执行到 printf("result = %d\n", result); perror("exec error"); exit(1);}5.3 运行结果6. 7.2 演示示例7.2.1 SubEnvTest.c参考 5.2.1 的 SubEnvTest.c7.2.2 Test.c#include <process.h>#include <stdio.h>#include 8.2 演示示例8.2.1 SubTest.c参考 4.2.1 的 SubTest.c8.2.2 Test.c#include <process.h>#include <stdio.h>#include 9.2 演示示例9.2.1 SubEnvTest.c参考 5.2.1 的 SubEnvTest.c9.2.2 Test.c#include <process.h>#include <stdio.h>#include 11.2 演示示例11.2.1 SubEnvTest.c参考 5.2.1 的 SubEnvTest.c11.2.2 Test.c#include <process.h>#include <stdio.h
));用于将指定数组按指定顺序进行排序void quick_exit(int status);它是 C11 标准中新增的函数,用于快速退出程序并执行一些清理操作。 该函数在某些操作系统上可能不可用,因为它并非标准的 C 语言函数,而是 POSIX 标准中定义的函数。 qsort() 函数中传入一个比较函数 compare(),用于比较两个元素的值。最后我们再次输出排序后的结果 ”After sorting: 1 2 3 4 5 6 7 8 9“。 1.3 运行结果2. quick_exit2.1 函数说明函数声明函数功能 void quick_exit(int status);它是 C11 标准中新增的函数,用于快速退出程序并执行一些清理操作。 该函数在某些操作系统上可能不可用,因为它并非标准的 C 语言函数,而是 POSIX 标准中定义的函数。
1.3 运行结果2. va_arg2.1 函数说明函数声明函数功能 type va_arg(va_list ap, type);用于从可变参数列表中获取下一个参数,并将其转换为指定的类型 参数:ap : 一个指向 va_list 类型的变量的指针,表示要访问的可变参数列表type : 一个类型说明符,表示下一个参数的类型2.2 演示示例可参考 1.2 中所示3. va_copy3.1 函数说明函数声明函数功能 它里面使用 vfprintf() 函数将格式化输出写入到一个文件流中;再然后,调用 rewind() 函数将文件指针重新定位到文件开头;再接着使用 fscanf() 函数从文件中读取数据,并使用 printf () 函数中输出从文件中读取的数据【其中浮点数部分保留两位小数】最后调用 fclose() 函数关闭文件指针,并结束程序5.3 运行结果6. vfscanf6.1 函数说明函数声明函数功能 int vfscanf 8.3 运行结果9. vsprintf9.1 函数说明函数声明函数功能 int vsprintf(char *str, const char *format, va_list ap);它使用格式化字符串
grapherrormsg(errorcode)); printf("Press any key to halt:"); getch(); exit(1); } } 6. 函数声明 函数功能 int isalnum(int c); 检查字符 c 是否为字母或数字 参数: c : 待检查的字符 返回值: 若字符为字母或数字,返回非零值; 否则返回 0。 这其实同 C 语言的自动类型转换有关。 我们知道在 C 语言中,char 类型本质上是一种整数类型,它占用一个字节(8 位)的存储空间,用于存储字符的 ASCII 码值(或其他字符编码值)。 15.3 运行结果 16. isalpha 16.1 函数说明 函数声明 函数功能 int isalpha(int c); 检查字符 c 是否为(大写或小写)字母 参数: c : 待检查的字符 函数声明 函数功能 int isspace(int c); 检查字符 c 是否为空白字符,如空格(' ')、制表符('\t')、换行符('\n')等。
总览函数声明函数功能 void obstack_init(struct obstack *obstack_ptr);它是 POSIX 标准库中的一个非标准函数,用于初始化对象堆栈。 2.2 演示示例#include <stdio.h>#include <stddef.h>struct example { int a; char b; double c;};int 3. open3.1 函数说明函数声明函数功能 int open(const char *path, int oflag, ...) 6. openpty6.1 函数说明函数声明函数功能 int openpty(int *amaster, int *aslave, char *name, const struct termios *termp 7. on_exit7.1 函数说明函数声明函数功能 int on_exit(void (*function)(int, void *), void *arg);它是 POSIX 标准定义的一个函数,用于在进程退出时调用注册的回调函数
kbhit()) { // 等待用户按键 } ch = getch(); // 获取用户按下的键值 printf("You pressed the '%c' key\n" 6. kill6.1 函数说明函数声明函数功能 int kill(pid_t pid, int sig);向指定进程或进程组发送一个信号参数:pid: 目标进程的 ID(进程ID或进程组ID)sig: something with mapped memory */ *(char *)ptr = 'A'; printk(KERN_INFO "Value at mapped address: %c\ return -1; } obj->a = 123; obj->b = 'A'; printk(KERN_INFO "obj->a = %d, obj->b = '%c' 25.2 演示示例c#include <linux/module.h>#include <linux/kernel.h>#include <linux/init.h>#include <linux/slab.h
;将一个字符转换为其对应的 ASCII 码值 int tolower(int c);可以用于将一个 ASCII 字符转换为小写字母int toupper(int c);可以用于将一个 ASCII 字符转换为大写字母 Width: "); outtextxy(170, 140, itoa(width, str, 10)); getch(); closegraph(); return 0;}5.3 运行结果6. 8.3 运行结果9. toascii9.1 函数说明函数声明函数功能 int toascii(int c);将一个字符转换为其对应的 ASCII 码值 参数:c : 要转换的字符9.2 演示示例#include 9.3 运行结果10. tolower10.1 函数说明函数声明函数功能 int tolower(int c);可以用于将一个 ASCII 字符转换为小写字母参数:c : 要转换的字符10.2 演示示例 int toupper(int c);可以用于将一个 ASCII 字符转换为大写字母参数:c : 要转换的字符11.2 演示示例#include <stdio.h>#include <ctype.h>
功能号决定了bdos函数要执行的具体DOS操作。例如,功能号0x09用于在屏幕上显示字符串,功能号0x3C用于创建或打开文件。 unsigned dosdx : 用于传递额外的参数或数据给DOS功能。 x1B') DONE = TRUE; bioscom(1, in, COM1); } } return 0; } 6. 在大多数情况下,驱动器号是通过位移来表示的,其中0x00表示第一个硬盘(通常是C:),0x80表示第一个软盘驱动器(通常是A:),以此类推。 int head : 指定了要访问的磁头号。 include <stdio.h> #define NELEMS(arr) (sizeof(arr) / sizeof(arr[0])) int numarray[] = {1, 2, 3, 5, 6, \n", a); return 0; } 12.3 运行结果 参考 [API Reference Document] [c语言中的 bar 函数] [c语言中的 bar3d 函数]
1. detectgraph1.1 函数说明函数声明函数功能 void detectgraph(int *graphdriver, int *graphmode);通过检测硬件确定图形驱动程序和模式1.2 <dos.h>#include <conio.h>// 定义一个宏INTR,代表时钟中断的十六进制向量值#define INTR 0X1C // 声明一个函数指针oldhandler,该指针指向一个没有参数且返回 void的函数。 2; poly[2] = maxx - 20; poly[3] = 20; poly[4] = maxx - 50; poly[5] = maxy - 20; poly[6] the polygon drawpoly(5, poly); // clean up getch(); closegraph(); return 0;}5.3 运行结果6.
char *nl_langinfo(nl_item item);它是一个 POSIX 标准函数,用于获取当前本地化环境下的语言环境信息。它可以返回一些与语言、货币、日期和时间格式等相关的信息。 注意: 由于 nice() 函数并不是标准 C 库中的函数,因此在编译时需要传递 -posix 参数或其他类似参数以启用 POSIX 标准。 9. nl_langinfo9.1 函数说明函数声明函数功能 char *nl_langinfo(nl_item item);它是一个 POSIX 标准函数,用于获取当前本地化环境下的语言环境信息。 它可以返回一些与语言、货币、日期和时间格式等相关的信息。 参数:item : 指定要获取的本地化信息。可以使用下列常量之一来指定:ABDAY_*:星期缩写名称(0 ~ 6 表示周日到周六)。 DAY_*:星期全称(0 ~ 6 表示周日到周六)。ABMON_*:月份缩写名称(0 ~ 11 表示一月到十二月)。MON_*:月份全称(0 ~ 11 表示一月到十二月)。AM_STR:上午字符串。
errno_t memset_s(void *s, rsize_t smax, int c, rsize_t n);C11 标准新增了一个名为 memset_s() 的安全版本函数。 5.3 运行结果6. mbstowcs6.1 函数说明函数声明函数功能 size_t mbstowcs(wchar_t *pwcs, const char *s, size_t n);用于将多字节字符序列转换为宽字符序列 char tmp[20]; memset(tmp, 0, sizeof(tmp)); // 将源字符串复制到目标字符串中(处理重叠的情况) memmove(tmp, str + 6, strlen(str) - 6); printf("%s\n", tmp); return 0;}注意: 在使用 memmove() 函数进行内存复制时,目标内存块必须足够大,以容纳源内存块中的全部内容 errno_t memset_s(void *s, rsize_t smax, int c, rsize_t n);C11 标准新增了一个名为 memset_s() 的安全版本函数。
dest, const wchar_t* src, size_t n);用于将一个宽字符数组的前 n 个宽字符复制到另一个宽字符数组wchar_t* wmemset(wchar_t* s, wchar_t c, 5.3 运行结果6. wctob6.1 函数说明函数声明函数功能 int wctob(wint_t wc);用于将给定的宽字符转换为其对应的字节表示参数:wc : 一个宽字符值返回值:如果能转换成功, 7.3 运行结果8. wmemchr8.1 函数说明函数声明函数功能 void* wmemchr(const void* s, wchar_t c, size_t n);用于在宽字符数组中查找给定的宽字符 参数:s : 一个指向宽字符数组的指针c : 要查找的宽字符值n : 要搜索的字节数返回值:如果找到了 c,则返回指向该位置的指针;否则返回空指针。 10.3 运行结果11. wmemset11.1 函数说明函数声明函数功能 wchar_t* wmemset(wchar_t* s, wchar_t c, size_t n);用于将一个宽字符数组的前