c语言windows函数库,关于c语言标准库和windows api函数的问题

1 , 关于c语言标准库和windows api函数的问题C语言也是平台相关的 。C库和API不是一个概念啦,不能说包含不包含啦,函数库是肯定有的 , 毕竟还是要编程的 。
2 , c语言中window函数的用法急急急c语言中的一般要用到的是主函数main(),然后就是一些常用的数学库函数像:绝对值函数fab(n) , 平方根函数sqrt(n),幂函数pow(x,i)之类的,这些是直接可以拿来用的,还有一些就是根据自己的需要可以自定义一些函数,可以先定义后使用,也可以先使用后定义 。基本上也就这三类的函数,不明白可以追问 。前两个参数是左上角的坐标 , 也就是窗口的起点,后两个分别是长和宽!
3,c语言 函数#include<stdio.h>func(int a,int b)//根据(3)处传进参数分别为8和8 int c; c=a+b;//c=8+8=16 return c;}main() int x=6,r; r=func(x,x+=2);/*传进参数分别为8 , 8(x+=2等效于x=x+2=6+2=8)因为传入参数的解析是从左边往右解析的,即func(x,x+=2)先执行x+=2 , 后解析x 。所以可以理解为(1)func(x,x+=2),(2)func(x,8),这时的x为8(3)func(8,8)*/ printf("%d\n",r); //所以输出为16}//可以复制到工程里查看func(x,x+=2);func的两个参数都是x,x值在第二个参数时加了2,因为x在内存中只有一个地址,所以第一个参数也就变成了8,进去的参数就是func(8,8),结果就是16了.我调试了一下发现 传给func(int a,int b)函数的是a=8,b=8这是因为执行x+=2,x的值变成了8而a接收的值是x所以成了a=8要想输出14则只要把x+=2改成x+2就行了x+=2 等于 x = x + 2此时x=8了以为func(x,x+=2)是先执行x=+2在调用因此x=8传来过去【c语言windows函数库,关于c语言标准库和windows api函数的问题】
4 , c语言中库函数原理库函数顾名思义是把函数放到库里..是别人把一些常用到的函数编完放到一个文件里,供别人用.别人用的时候把它所在的文件名用#include<>加到里面就可以了.一般是放到lib文件里的....编译器提供的可在c源程序中调用的函数 。可分为两类,一类是c语言标准规定的库函数,一类是编译器特定的库函数 。由于版权原因,库函数的源代码一般是不可见的,但在头文件中你可以看到它对外的接口 。如果想具体了解库函数是怎么具体实现的,可以在网上找到库函数的源代码 。之后进行研究 。祝你成功!希望我的回答对您有帮助!答案是肯定的 。高级语言,类似于C,是基于WINDOWS API的 。我们可以这样看这个机构,高级语言的编译器 , 像VISUAL STUDIO,在安装时是带有若干LIB的,这些LIB包含高级语言标准中所要求的库函数的实现代码 , 即二进制代码 。在你的程序被连接时,编译器一定会去找那些包含了标准库函数的LIB一起连接成一个可执行程序 。而这些LIB的实现毫无疑问是使用了WINDOWS API的 。否则你可以想象对于各种WINDOWS支持的硬件编译器要实现不同的代码 , 并且要不停的跟着升级 。而WINDOWS API屏蔽了各种硬件的不同,为调用者提供了稳定而统一的接口 。printf根据传入参数转换成字符串,然后输出到该进程的标准输出缓冲里 , 当缓冲满或调用flush(),操作系统再把缓冲里的数据进行处理,在默认情况下标准输出是控制台显示,这时操作系统把缓冲里的数据显示出来 。malloc调用的是操作系统的HeapAlloc()函数,先进行安全检测和记录 , 再调用HeapAlloc()申请内存空间字符函数,所在函数库为ctype.h数学函数 , 所在函数库为math.h、stdlib.h、string.h、float.h目录函数,所在函数库为dir.h、dos.h进程函数,所在函数库为stdlib.h、process.h转换子程序,函数库为math.h、stdlib.h、ctype.h、float.h诊断函数,所在函数库为assert.h、math.h输入输出子程序,函数库为io.h、conio.h、stat.h、dos.h、stdio.h、signal.h接口子程序,所在函数库为:dos.h、bios.h操作函数,所在函数库为string.h、mem.h 。存贮分配子程序,所在函数库为dos.h、alloc.h、malloc.h、stdlib.h、process.h时间日期函数,函数库为time.h、dos.h 学以致用,用什么就看什么!5,请高手提供一些C语言中常用的库函数并说明它的作用和所在头文件字符处理函数 本类别函数用于对单个字符进行处理,包括字符的类别测试和字符的大小写转换 头文件 ctype.h 函数列表<> 函数类别 函数用途 详细说明 字符测试 是否字母和数字 isalnum 是否字母 isalpha 是否控制字符 iscntrl 是否数字 isdigit 是否可显示字符(除空格外) isgraph 是否可显示字符(包括空格) isprint 是否既不是空格 , 又不是字母和数字的可显示字符 ispunct 是否空格 isspace 是否大写字母 isupper 是否16进制数字(0-9 , A-F)字符 isxdigit 字符大小写转换函数 转换为大写字母 toupper 转换为小写字母 tolower 地区化 本类别的函数用于处理不同国家的语言差异 。头文件 local.h 函数列表 函数类别 函数用途 详细说明 地区控制 地区设置 setlocale 数字格式约定查询 国家的货币、日期、时间等的格式转换 localeconv 数学函数 本分类给出了各种数学计算函数,必须提醒的是ANSI C标准中的数据格式并不符合IEEE754标准 , 一些C语言编译器却遵循IEEE754(例如frinklin C51) 头文件 math.h 函数列表 函数类别 函数用途 详细说明 错误条件处理 定义域错误(函数的输入参数值不在规定的范围内) 值域错误(函数的返回值不在规定的范围内) 三角函数 反余弦 acos 反正弦 asin 反正切 atan 反正切2 atan2 余弦 cos 正弦 sin 正切 tan 双曲函数 双曲余弦 cosh 双曲正弦 sinh 双曲正切 tanh 指数和对数 指数函数 exp 指数分解函数 frexp 乘积指数函数 fdexp 自然对数 log 以10为底的对数 log10 浮点数分解函数 modf 幂函数 幂函数 pow 平方根函数 sqrt 整数截断,绝对值和求余数函数 求下限接近整数 ceil 绝对值 fabs 求上限接近整数 floor 求余数 fmod 本分类函数用于实现在不同底函数之间直接跳转代码 。头文件 setjmp.h io.h 函数列表 函数类别 函数用途 详细说明 保存调用环境 setjmp 恢复调用环境 longjmp 信号处理 该分类函数用于处理那些在程序执行过程中发生例外的情况 。头文件 signal.h 函数列表 函数类别 函数用途 详细说明 指定信号处理函数 signal 发送信号 raise 可变参数处理 本类函数用于实现诸如printf,scanf等参数数量可变底函数 。头文件 stdarg.h 函数列表 函数类别 函数用途 详细说明 可变参数访问宏 可变参数开始宏 va_start 可变参数结束宏 va_end 可变参数访问宏 访问下一个可变参数宏 va_arg 输入输出函数 该分类用于处理包括文件、控制台等各种输入输出设备,各种函数以“流”的方式实现 头文件 stdio.h 函数列表 函数类别 函数用途 详细说明 文件操作 删除文件 remove 修改文件名称 rename 生成临时文件名称 tmpfile 得到临时文件路径 tmpnam 文件访问 关闭文件 fclose 刷新缓冲区 fflush 打开文件 fopen 将已存在的流指针和新文件连接 freopen 设置磁盘缓冲区 setbuf 设置磁盘缓冲区 setvbuf 格式化输入与输出函数 格式输出 fprintf 格式输入 fscanf 格式输出(控制台) printf 格式输入(控制台) scanf 格式输出到缓冲区 sprintf 从缓冲区中按格式输入 sscanf 格式化输出 vfprintf 格式化输出 vprintf 格式化输出 vsprintf 字符输入输出函数 输入一个字符 fgetc 字符串输入 fgets 字符输出 fputc 字符串输出 fputs 字符输入(控制台) getc 字符输入(控制台) getchar 字符串输入(控制台) gets 字符输出(控制台) putc 字符输出(控制台) putchar 字符串输出(控制台) puts 字符输出到流的头部 ungetc 直接输入输出 直接流读操作 fread 直接流写操作 fwrite 文件定位函数 得到文件位置 fgetpos 文件位置移动 fseek 文件位置设置 fsetpos 得到文件位置 ftell 文件位置复零位 remind 错误处理函数 错误清除 clearerr 文件结尾判断 feof 文件错误检测 ferror 得到错误提示字符串 perror 实用工具函数 本分类给出了一些函数无法按以上分类,但又是编程所必须要的 。头文件 stdlib.h 函数列表 函数类别 函数用途 详细说明 字符串转换函数 字符串转换为整数 atoi 字符串转换为长整数 atol 字符串转换为浮点数 strtod 字符串转换为长整数 strtol 字符串转换为无符号长整型 strtoul 伪随机序列产生函数 产生随机数 rand 设置随机函数的起动数值 srand 存储管理函数 分配存储器 calloc 释放存储器 free 存储器分配 malloc 重新分配存储器 realloc 环境通信 中止程序 abort 退出程序执行,并清除环境变量 atexit 退出程序执行 exit 读取环境参数 getenv 程序挂起,临时执行一个其他程序 system 搜索和排序工具 二分查找(数据必须已排序) bsearch 快速排序 qsort 整数运算函数 求绝对值 abs div 得到除法运算底商和余数 求长整形底绝对值 labs 求长整形除法的商和余数 ldiv 多字节字符函数 得到多字节字符的字节数 mblen 得到多字节字符的字节数 mbtowc 多字节字符转换 wctomb 多字节字符的字符串操作 将多字节串转换为整数数组 mbstowcs 将多字节串转换为字符数组 mcstowbs 字符串处理 本分类的函数用于对字符串进行合并、比较等操作 头文件 string.h 函数列表 函数类别 函数用途 详细说明 字符串拷贝 块拷贝(目的和源存储区不可重叠) memcpy 块拷贝(目的和源存储区可重叠) memmove 串拷贝 strcpy 按长度的串拷贝 strncpy 字符串连接函数 串连接 strcat 按长度连接字符串 strncat 串比较函数 块比较 memcmp 字符串比较 strcmp 字符串比较(用于非英文字符) strcoll 按长度对字符串比较 strncmp 字符串转换 strxfrm 字符与字符串查找 字符查找 memchr 字符查找 strchr 字符串查找 strcspn 字符串查找 strpbrk 字符串查找 strspn 字符串查找 strstr 字符串分解 strtok 杂类函数 字符串设置 memset 错误字符串映射 strerror 求字符串长度 strlen 日期和时间函数 本类别给出时间和日期处理函数 头文件 time.h 函数列表 函数类别 函数用途 详细说明 时间操作函数 得到处理器时间 clock 得到时间差 difftime 设置时间 mktime 得到时间 time 时间转换函数 得到以ASCII码表示的时间 asctime 得到字符串表示的时间 ctime 得到指定格式的时间 strftime 函数库未来的发展方向 本部分用于说明各类别函数库在将来如何发展 。序号 库类别 头文件 详细说明 1 错误处理 errno.h 2 字符处理 ctype.h 3 地区化 local.h 4 数学函数 math.h 5 信号处理 signal.h 6 输入输出 stdio.h 7 实用工具程序 stdlib.h 8 字符串处理 string.hstdio.hmath.hctype.hstring.hmalloc.hwindows.h

    推荐阅读