版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、一、简介习语言是一种新的中文编程语言,习语言是基于C 语言语法扩充中文支持的编程语言。1 、习语言是 c 语言的超级,完全支持 c 语言,并做扩充发展, 为支持多字符集编程而研发的专注区域化用户编程体验的语言。( 目前专注使用简体中文的用户 ,未来可以根据客户需要扩充繁 体,藏语,维吾尔语 ,阿拉伯语等语种的习语言 )2、习语言是一种用于学习教育的语言。由于做了本土化扩展, 更容易让用户接受,同时完全兼容 c 语言 ,可以使用户摆脱英文 的困惑 , 在很多时间内掌握编程语言的内涵 , 迅速提升实际工作 能力。3 、习语言是一种简洁的语言,习语言研发过程中站在用户的角 度对之前的 C 语言函数库
2、和头文件进行了精简,去除过时的东 西,更容易学习和维护。4、习语言是一种跨平台的语言。习语言为跨平台定义统一的函 数库接口, 用习语言写的应用程序切换到新的平台上, 只需重新 编译下源代码, 不须或微量修改源代码即可生成新平台下的应用 程序二、习语言示例# 包含 习语言系统 . 接口 主函数 ()输出字符串并换行 ( 我也会编程啦,这是我的第一个程序! );暂停 ();三、习语言关键词( 一) 类型全称:字符类型短整数类型整数类型 长整数类型浮点数类型双精度类型小数类型简称:字符短整数整数 长整数 浮点数双精度小数全称:枚举类型结构类型联合类型 无类型自然数类型 字节类型简称:自然数字节全称:
3、字类型双字类型 字符串类型 变参类型 无参数无返回值汉字类型( 二) 控制用保留词如果或者否则步进循环 循环重复 直到当分支若等于其他值跳出继续跳转到返回 开始 结束( 三) 变量修饰保留词外部的静态的无符号 易变的只读的寄存器变量 常量 本地的 ( 四) 运算符保留词类型长度 , 加 , 减 , 乘 , 除 , 模除 , 加加 , 减减 , 赋值 , 加 等, 减等 , 乘等, 除等, 模等,等于 , 不等于 , 大于 , 小于, 大于等于 , 小于等于 , 左移 , 右 移, 并且 , 与 , 或, 非 ,位与 , 位或 , 位非, 异或 , 指向的( 五) 其他保留词类型定义 习调用 标
4、准调用 真 假四、习语言预处理命令(一)习语言支持的预定义宏:_变参_ _ 文件名 _ _行_ _日期_ _时间_二)预处理命令:1. 包含2. 定义3. 取消定义4. 如果5. 或者6. 否则如果结束如果已定义如果未定义错误预处理命令 如果 和 或者 后要使用逻辑表达式, 表达式中 可以实用习语言支持的逻辑算术运算符和 函数: 已定义( . ) 函数: 已定义( . ) 括号中只能是一个宏名, 此函数功能用 来判断 一个宏是否定义。五、习语言函数分类习语言函数可分为: 系统函数、文件操作函数、字符串处理 函数、图形函数、视窗函数等六、系统函数 之(一)进程函数 习语言系统函数在接口目录下的“
5、习语言系统 .接口”文件中声 明,包含此接口文件即可直接使用系统函数。(一)进程函数1、整数类型 执行程序 ( 只读串类型 可执行文件名 ,整数类型 搜索方式, 只读串类型 参数 , 只读串类型 环境变量 ); 解释:当搜索方式 = 宏_进程_搜索时,函数可以利用 PATH环境变量查 找可执行文件。 = 宏_进程不搜索 : 不使用环境变量 = 空指针时,启动的子进程使用当前程序的环境。 否则:改变子进程的环境环境变量中的每一项是一个字符串,形式如: “变量名 = 值” 参数表的第一个参数必须为 “可执行文件名 ”, 参数表和环境变 量的最后一个参数必须为 “空指针 ”,标志结束执行成功,则不返
6、回,当前进程被终止,内存空间被新进程占用,打开的文件保持打开,开始新进程,否则返回 错误码。2.整数类型 运行程序 (整数类型模式,只读串类型 可执行文 件名, 整数类型搜索方式,只读串类型 参数 ,只读串类型 环 境变量 );解释:模式:为运行模式,取值 宏_进程等待 表示在子程序 运行完后返回本程序(同步执行)宏_进程并发 表示在子程序运行时同时 运行本程序 (异步执行 )宏_进程覆盖 表示在退出本程序运行子程 序,效果同 “执 行程序”宏_进程后台运行 表示子程序在后台执行, 不使用键盘和控制台其他参数同 “ 执行程序” 的说明 从同步执行模式返回的是子程序的退出码, 从异步执行模式返回
7、 的是子进程的句柄整数类型 外部命令 ( 字符串类型 命令串 ); 解释:暂停当前程序的运行 , 执行命令串 , 返回外部命令运行结 果。无类型退出 (整数类型状态);解释:终止当前程序 , 同执行返回语句。同 c: exit()(二)控制台函数1、整数类型获取按键 (无类型 );2、整数类型 获取按键并显示 ( 无类型 );3、整数类型有按键吗 (无类型 );解释: 返回 0: 没有 , 否则 : 有 。 等同标准 C的 kbhit()4、整数类型 回置按键 ( 整数类型 键码 ); 解释:将按键回送会键盘缓冲区 , 最大可回置 255 个按键 , 返回 -1 表示已满 ,不能再回指按键 .
8、否则返回 回置的键码5、整数类型 输出字符 ( 字节类型 字符码 ); 解释:输出单字节字符。成功 返回 字符 , 失败 返回 -16、整数类型 输出字 ( 汉字类型 汉字 ); 解释:输出单字节字符或多字节汉字。成功 返回 输出字节数 , 失败 返回 -1 即宏 _文件结束7、整数类型 输出字符串 ( 字符串类型 字符串 ); 解释:输出字符串, 成功 返回 大于等于 0 , 失败返回 宏_文 件结束 可以使用 % 行 做换行8、整数类型 输出字符串并换行 ( 字符串类型 字符串 ); 解释:输出字符串后换行9、整数类型 换行输出字符串 ( 字符串类型 字符串 ); 解释:先换行再输出字符串
9、10、整数类型输入字符 ( 无参数 );解释:输入一个单字节字符 , 出错 返回 -1 即 宏 _文件结束11、汉字类型输入字 ( 无参数 );解释:输入一个单字节字符或汉字 , 出错返回 0 xFFFFFFFF (宏 _文件结束 )12、整数类型输入字符串 ( 字符串类型 缓冲区 , 整数类型最大输入个数 );解释:返回输入个数,最大为 “缓冲区大小 -1”碰,到回车返回, 输 入串以 0 结束 .13、整数类型格式输出 ( 只读的 字符串类型 格式, . );解释:格式字符串最大 500 字节长 , 格式中普通字符按原样输 出, %(): 为指令 , % 输出百分号指令有: %( 整数)
10、%( 自然数) %( 十六) %( 拾陆) %( 八) %( 小 数) %( 双精度 ) %( 串) %( 字符) %( 科学) %( 换行) 另一种指令形式是 : % 整 % 自 % 六 % 陆 % 八 % 小 % 双 % 串 % 字 % 科 % 行14、整数类型习格式输出 ( 只读的 字符串类型 格式, . );解释: 等同 C 语言的 printf 函数15、整数类型格式化 ( 字符类型 * 缓冲区, 只读的 字符串类型 格式, . );解释: 格式字符串最大 500 字节长 , 格式中普通字符按原样输 出, %(): 为指令 , % 输出百分号指令有: %( 整数) %( 自然数) %
11、( 十六) %( 拾陆) %( 八) %( 小 数) %( 双精度 ) %( 串) %( 字符) %( 科学) %( 换行) 另一种指令形式是 : % 整 % 自 % 六 % 陆 % 八 % 小 % 双 % 串 % 字 % 科 % 行16、整数类型习格式化 ( 字符类型 * 缓冲区, 只读的 字符串类型 格式, . );解释: 等同 C 语言的 sprintf 函数 返回存储到缓冲区中的字节数17、整数类型 习调用 格式输入 ( 只读的 字符串类型 格式 , . );解释: 从标准输入根据格式输入变量 , 返回输入的变量个数 , 输入时, 格式定义要和欲输入的数据类型严格相同, 格式控制字 符
12、见 格式输出 函数18、整数类型 习调用 习格式输入 ( 只读的 字符串类型 格式 , . );解释: 用 C 语言 scanf 相同方法 从标准输入根据格式输入变量 返回输入的变量个数 , 输入时, 格式定义要和欲输入的数据类 型严格相同19、整数类型 习调用 字符串格式输入 ( 只读的 字符串类型 字 符串 , 只读的 字符串类型 格式, . );解释: 从字符串根据格式输入变量 , 返回输入的变量个数20、整数类型 习调用 习字符串格式输入 ( 只读的 字符串类型 字符串 , 只读的 字符串类型 格式, . );解释: 用 C 语言相同方法 从字符串根据格式输入变量 , 返回 输入的变量
13、个数 sscanf ();21、整数类型输入整数 ( 无参数 );22、双精度类型输入浮点数 ( 无参数 );23、整数类型输出整数 ( 整数类型 整数值 , 整数类型 进制);24、整数类型输出自然数 ( 自然数类型整数值 , 整数类型进制 );25、整数类型输出浮点数 ( 双精度类型浮点值 );26、整数类型有效位输出浮点数 ( 双精度类型 浮点值 , 整数类型 有效位 );(三)时间日期函数1、日期时间类型 * 格林威治时间 ( 时间类型 * 时间 ); 解释:本函数把 时间 所指的时间转换成格林威治时间 ,并以日期 时间结构形式返回2、日期时间类型 * 当地时间 ( 时间类型 * 时间
14、 ); 解释:本函数把 时间 所指的时间转换成当地标准时间 ,并以日期 时间结构形式返回3、字符类型 * 日期时间转字符串 ( 日期时间类型 * 日期); 解释:将日期时间类型表示的日期转换为字符串4、字符类型 * 时间转字符串 ( 时间类型 * 时间); 解释:将时间类型表示的日期转换为字符串5、时间类型 当前时间 ( 无参数 ); 解释:返回 自从 1970 年 1 月 1 日 0 点开始到目前流逝的秒数(四)数学函数1、绝对值 ( 实数值 )2、无类型浮点运算初始化 ( 无类型 );解释:重新初使化浮点数学程序包3、双精度类型 复数绝对值 (复数类型复数) ; 解释:返回复数的绝对值4、
15、双精度类型指数运算 (双精度类型 指数) ;解释:该值指定 e(自然对数的底)的幂。如果指数值大于 709.782712893 ,就会发生错误。常量 e 约 为 2.718282 。注释指 数运算函数补充了对数函数的作用,有时将它称为反 对数。5、双精度类型次方运算 (双精度类型 x,双精度类型 y) ;解释:返回 x的 y 次方的值6、双精度类型对数运算 (双精度类型 实数) ;解释:自然对数运算 e(自然对数的底) 。7、双精度类型对数运算 10(双精度类型 实数) ;解释:以十为底对数运算 e(自然对数的底) 。8、双精度类型开方运算 (双精度类型 x) ;解释:返回 x 的开方9、双精
16、度类型 反余弦 (双精度类型 弧度) ; 解释:返回 x的反余弦 cos-1(x) 值,x 为弧度10、双精度类型 反正弦 (双精度类型 弧度) ;解释:返回 x 的反正弦 sin-1(x) 值,x 为弧度11、双精度类型 反正切 (双精度类型 x) ;解释:返回 x 的反正切 tan-1(x) 值,x 为弧度12、双精度类型 反正切 2(双精度类型 分子 ,双精度类型 分 母);解释:返回 y/x 的反正切 tan-1(x) 值 ,y 和 x 为弧度13、双精度类型 余弦(双精度类型 弧度) ; 解释:返回 x 的余弦 cos(x) 值,x 为弧度14、双精度类型 正弦(双精度类型 x) ;
17、 解释:返回 x 的正弦 sin(x) 值,x 为弧度15、双精度类型 正切 (双精度类型 x); 解释:返回 x 的正切 tan(x) 值,x 为弧度16、双精度类型 双曲余弦 (双精度类型 x) ;解释:返回 x 的双曲余弦 cosh(x) 值,x 为弧度17、双精度类型 双曲正弦 ( 双精度类型 x) ; 解释:返回 x 的双曲正弦 sinh(x) 值,x 为弧度18、双精度类型 双曲正切 (双精度类型 x) ;解释:返回 x 的双曲正切 tanh(x) 值,x 为弧度19、双精度类型 求直角斜边长 (双精度类型 x, 双精度类型 y); 解释:返回直角三角形斜边的长度 (z), x 和
18、 y 为直角边的长 度,z2=x2+y220、双精度类型 向上求整 ( 双精度类型 x) ;解释:返回不小于 x 的最小整数 ( = x 的整数)21、双精度类型 向下求整 (双精度类型 x) ;解释: 返回不大于 x 的最大整数 ( =x 的整数 )22、无类型初始化随机数 ( 整数类型 数值 ) ;解释: 初始化随机数发生器, 用 1 恢复到始终相同的初始状态, 其他值将初始态设置为一个随机值。23、整数类型取随机数 (无类型 ) ;解释: 产生一个随机数并返回这个数 , 随机数位于 0 和 宏_ 最大随机数 之间。24、双精度类型 浮点数分解 (双精度类型 双精度数 , 双精度类 型 *
19、 整数指针 );解释:将双精度数 value 分解成尾数和阶25、双精度类型 浮点数模除 ( 双精度类型 x,双精度类型 y); 解释:返回 x/y 的余数26、双精度类型 求尾数和阶 ( 双精度类型 双精度数, 整数类 型 * 阶指针 ) ;解释:将双精度数分成尾数和阶, 返回尾数 双精度数分解为 尾 数 *2 阶(次方)27、双精度类型 尾数阶运算 (双精度类型 尾数 , 整数类型 阶); 解释:返回 尾数 *2 阶(次方) 的值。28、交换 ( 类型,甲, 乙 ) 解释:对指定类型 数据进行交换(五)调试函数1、无类型暂停(无类型 );解释:暂停系统运行 , 按任意键继续2、整数类型 设
20、置调试级别 ( 整数类型 级别 );解释:设置调试级别 , 级别取值 :0-7 ,返回旧调试级别 , 输入级 别大于 7 时复位当前调试级别为缺省状态, 小于 0 则为读取当前 调试级别 ,缺省调试级别为宏 _错误 , 设置调试级别后大于调试级别的调试 信息不输出3、整数类型 设置调试类别 ( 整数类型 类别,整数类型 开 闭 );解释: 输入类别 0-28 ,开关 =1 或开 则打开, =0 或关 则 关闭, 返回设置后的调试类别开关状态 , 大于 28 为读取当前调 试类别状态 , 类别 0 缺省为打开状态4、无返回值 设置调试标志串 ( 字符类型 * 标志串 ); 解释:设置调试信息输出
21、时附带的调试标志串5、字符类型 * 读取调试标志串 ( 无参数 ) ;6、整数类型 调试输出 ( 整数 类别,整数 级别, 只读的 字符 串类型 格式, . );解释: 用指定的调试类别和调试级别输出调试信息 , 类别为 0-28, 级别为 0-7, 只有对应调试类别为打开状态 且 级别 小于 等于 系统调试级别的才输出指定类别级别允许输出 , 返回 1, 不允许输出则 返回 0 参数 格式同格式输出7、无类型 调试断点开关 ( 整数类型 开关 ); 解释:打开或关闭调试断点 , 1 或开 为开, 0, 或关 为关8、无类型 调试断点 ( 字符 * 文件名, 整数 行 ) ; 解释:暂停程序的
22、执行,输出文件名,行信息,任意键继续 七、 文件操作函数习语言文件操作函数在接口目录下的 “习语言文件 .接口 ”文件中 声明,包含此接口文件即可直接使用文件操作函数。(一)目录函数1、整形类型 设置当前工作目录 (字符类型 *新目录 ); 解释:将当前工作目录设置为新目录 ,新目录必须实际存在,成 功返回 0,新目录不存在返回 -1 ,新目录包含盘符则改变当前磁 盘和当前工作目录,否则只改变当前工作目录2、整形类型设置缺省磁盘 (整数类型 磁盘号码 );解释:磁盘号码: 1:A 2:B 3:C 成功执行返回 “成功”3、字符串类型 获取当前工作路径 ( 整数类型 磁盘号码,字符 串类型 路径
23、缓冲区,整数类型 缓冲区长度 );解释:磁盘号码: 0:缺省磁盘 1:A 2:B 3:C 成功执行 返回 路径缓冲区,否则 “空指针 ”, 路径缓冲区为空指针时自动 分配内存,返回,后期须释放。4、整形类型获取缺省磁盘 (无类型 );解释:返回缺省磁盘(当前工作磁盘) 1:A 2:B 3:C 5、双字类型获取可用磁盘 (无类型 );解释:返回用位标志的可用磁盘列表,位 - 1:A 2:B 3:C ,失败返回 06、整数类型 创建目录 (字符串类型 目录指针 ); 解释:成功返回 “成功 ”7、整数类型 删除目录 (字符串类型 目录指针 ); 解释:成功返回 “成功 ”8、字符串类型 获取环境变
24、量 (字符串类型 环境变量名 ); 解释:成功返回 变量值,否则 空指针9、整数类型 设置环境变量 ( 字符串类型 环境变量表达式 ); 解释:环境变量表达式 : 应为 变量名 = 值 形式 . 成功返回 成功10、无类型用环境变量搜索文件 (字符串类型 文件名 ,字符串类型 环境变量名 , 字符串类型 路径缓冲区 ) ; 解释:现在当前工作目录查找文件, 找不到则使用环境变量指明 的路径查找, 找到则将找到的路径复制到路径缓冲区中, 路径缓 冲区 应足够长, 至少应为:宏 _最大路径长, 成功返回 “成功11、整数类型开始文件查找 ( 字符串类型 路径名 , 文件查找结果类型 * 查找结果
25、);解释:根据路径名如 “*.wps 查”找文件, 查找结果保存在查找结 果里,返回 成功 表示找到文件, 返回第一个文件信息, 否则为失败12、整数类型继续文件查找 (文件查找结果类型 * 查找结果 );解释:返回 成功 表示找到文件, 返回文件信息, 否则为失败 取匹配 finddirst 的文件 ,成功返回 013、整数类型结束文件查找 (文件查找结果类型 * 查找结果 );解释:返回 成功 表示找到文件, 返回文件信息, 否则为失败 取匹配 finddirst 的文件 ,成功返回 0(二)文件操作函数1、整数类型重命名 ( 字符串类型 原文件名 , 字符串类型 新文件名 );解释:成功
26、返回 成功 2、整数类型检查属性 (字符类型 *文件名 ,整数类型 属性 ) ;解释:本函数检查文件属性 , 属性取值为: 06 可以读、写 04 可以读 02 可以写 00 文件存在 如果具有指定属性,返回 0, 不存在或不具有指定属性返回 -13、整数类型设置属性 (字符类型 *文件名,整数类型 属性) ;解释:本函数用于设定文件的属性 属性可以为以下值:文件属 性_可写、文件属性 _可读、文件属性 _可读 |文件属性 _可写(三)低级文件处理函数1、整数类型 习调用 打开文件 (只读的 字符类型 *文件名 , 整 数类型 模式, ./* , 整数类型 属性 */);解释:函数:打开模式,
27、 功能:为读或写打开一个文件 , 模式取值见下表打开模式 只读:以只读方式打开打开模式 _只写:以只写方式打开打开模式 _读写:以可读可写方式打开打开模式 _添加:每次写之前将文件指针移到文件末尾,只在尾部写入打开模式 _创建:创建并打开文件, 可以和打开模式 _临时一起使用打开模式 _重建:打开一个文件并清空打开模式 _缺失:和打开模式 _创建一起使用,表示只有在文件缺失(不存在)才创建文件打开模式 _文本: 文本模式打开,读的时候回车换行符转换为换行,写入时换行符转换为回车换行打开模式 _数据: 以二进制数据模式打开, 不进行转换打开模式 _不继承 : 继承标志:子进程不继承此文件 打开模
28、式 _临时:临时文件标志:当最后一个句柄关闭时文件被删除打开模式 _短期:临时文件 ,尽量不使用缓存刷新打开模式 _顺序:文件主要以顺序方式存取打开模式 _随机:文件主要以随机方式存取当模式为“打开模式 _创建” 时使用,属性 : 可取值: 文件属性 _可写: 文件属性 _可读文件属性 _可读|文件属性 _可写返回 文件句柄 , 打开出错时返回 -1 , 调用函数 获取错误码 () 获取具体错误信息2、整数类型 创建文件 (字符类型 * 文件名 , 整数类型 属性); 解释:以指定文件名建立一个新文件,并设定读写属性。属性 为文件读写属性,参见 :打开文件 返回 文件句柄, 出错时返 回 -1
29、 , 调用函数 获取错误码 () 获取具体错误信息3、整数类型读文件 (整数类型 文件句柄 , 无类型 * 缓冲区 ,长度类型 字节数 );解释:从文件句柄关联的文件中读入指定数目字节数据存入缓冲 区中 , 返回实际读取的字符数 , 若文件已结束 返回 0, 文件句 柄无效或其他错误 返回 -1 , 文本模式会将回车换行替换为换 行4、整数类型读文件字 (整数类型 文件句柄 , 汉字类型 * 汉字);解释: 从文件句柄关联的文件中读入一个字符或汉字 , 返回读取 汉字的字节数 ,* 汉字为读取的汉字 , 若文件已结束 返回 0, 文 件句柄无效或其他错误 返回 -1 ,* 汉字 置为-15、整
30、数类型写文件 (整数类型 文件句柄 , 无类型 * 缓冲区 ,长度类型 字节数 );解释:将缓冲区中的 字节数 个字符写入文件号为 文件句柄 的文 件中 , 返回实际写入的字节数 , 如果文件写入错误或句柄无效 , 返回 -1, 文本模式会将换行替换为回车换行 .6、整数类型写文件字 (整数类型 文件句柄 , 汉字类型 汉字);解释:将字符或汉字写入文件号为 文件句柄 的文件中 , 返回实 际写入的字节数 , 如果文件写入错误或句柄无效 ,返回 -1, 文本 模式会将换行替换为回车换行 .7、整数类型 复制文件句柄 ( 整数类型 文件句柄 ); 解释:复制一个文件句柄 , 返回新句柄8、整数类
31、型 文件句柄赋值 (整数类型 原文件句柄 , 整数类型 新文件句柄 ) ;解释:将新文件句柄关联的文件关闭, 然后将原文件句柄关联的 文件同时关联到新文件句柄9、整数类型 判断文件结束 (整数类型 文件句柄 ); 解释:检查文件是否结束 ,结束返回 1,否则返回 010、整数类型文件长度 (整数类型 文件句柄 );解释:返回文件长度,文件句柄为文件号11、整数类型设置文件模式 ( 整数类型 文件句柄 ,无符号 打开模式 );解释:模式只能是: 打开文件 _文本 或 打开文件 _数据 , 通 常用于改变 标准输入文件, 标准输出文件 对输入输出的处理模 式 返回 之前的文件模式。本函数用来设定与
32、文件句柄关联的文件的打开模式12、整数类型定位文件 (整数类型 文件句柄 , 整数类型 偏移 , 整数类型 参考位置 );解释:函数 定位文件 把文件指针移到相对 参考位置 指定 偏 移个字节处 ,参考位置 可以为以下值 : 定位 _文件头 定位 _当 前位置 定位 _文件尾13、整数类型当前文件位置 ( 整数类型 文件句柄 );解释:本函数返回文件号为 handle 的文件指针 ,以字节表示14、整数类型是字符设备吗 ( 整数类型 文件句柄 );解释:本函数用来取设备 handle 的类型15、整数类型关闭文件 (整数类型 文件句柄 );解释:关闭文件句柄所关联的文件(四)高级 (流式 )文
33、件处理函数1、文件类型 * 文件打开 ( 字符类型 * 文件名 ,字符类型 *方 式 );解释:以指定方式打开文件, 返回文件指针 , 可加的后缀为 文 或t 、数或b。数或b 表示文件以二进制形式进行操作, 文或t 没必要使用方式读写性文本 /二进制文件新建/打开旧文件中文方式R读文本打开旧的文件读W写文本新建文件写A添加文本有就打开无则新建添R+读/写不限制打开读+W+读/写不限制新建文件写+A+读/添加不限制有就打开无则新建添+2、文件类型 * 文件打开句柄 ( 整数类型 文件句柄 ,字符类型* 方式 );3、文件类型 * 文件重新打开 ( 字符类型 * 文件名 ,字符类型 * 方式,
34、文件类型 * 当前流 ); 解释:关闭“当前流 ”文件, 然后用 输入的文件名和方式重新打开,将打开的文件指针赋值给当前 流,并返回。4、整数类型 文件读字符 ( 文件类型 * 流 ); 解释:从文件中读入一个单字节字符 , 成功返回读入的字符 , 出 错或文件结束 返回 -1 即 宏_文件结束5、整数类型 文件写字符 ( 文件类型 * 流 , 整数类型 zf ); 解释:向文件中写入一个单字节字符 , 成功返回写入的字符 , 出 错返回 -1 即 宏_文件结束6、整数类型 文件读字 ( 文件类型 * 流 , 汉字类型 * 汉字 ); 解释: 从文件中读入一个字符或汉字 , 成功返回读入字符的
35、字节 数, * 汉字是所读汉字 , 若文件已结束 返回 0, 文件句柄无效或 其他错误 返回 -1, * 汉字 赋值 -17、整数类型 文件写字 ( 文件类型 * 流, 汉字类型 zf ); 解释:成功 返回 写入的字节数 , 失败 返回 08、整数类型 文件回置字符 ( 文件类型 * 流, 整数类型 一 字符 );9、字节类型 * 文件读字符串 ( 文件类型 * 流, 字节类型 * 缓冲区 , 整数类型 个数);解释:读入指定个数 -1 个字符或碰到换行符或文件结束 , 添加字 节 0 ,返回 缓冲区,若返回空指针 表示出错或文件结束。10、整数类型文件写字符串 ( 文件类型 * 流, 字节
36、类型 *缓冲区 );解释:返回值 大于等于 0 : 成功。 否则 返回 宏 _文件结束11、整数类型文件读数据 ( 文件类型 * 流, 字节类型 *缓冲区 ,整数类型 元素字节数 ,整数类型 元素个数 );解释: 从流中读入指定个数个单位长度的数据到缓冲区中, 出错或文件提前结束 , 返回的字节数会小于 元素个数 . 可用 文件 结束() 文件错误 () 函数 测试状态 .12、整数类型文件写数据 ( 文件类型 * 流, 字节类型 *缓冲区,整数类型 元素字节数 ,整数类型 元素个数 ) ;解释: 向流中写入指定个单位长度的字节数据 , 返回写入的字节 数, 出错时返回的字节数会小于 元素个数
37、 . 可用 文件错误 () 函数 测试 .13、整数类型文件格式输入 (文件类型 *输入流 , 只读的 字符类型 *格式, . );解释:以格式化形式从流文件中读入一个格式串14、整数类型文件习格式输入 (文件类型 * 输入流, 只读的字符类型 *格式, . );解释:以格式化形式从流文件中读入一个格式串15、整数类型文件格式输出 (文件类型 *输出流 , 只读的 字符类型 *格式, . ) ;解释:以格式化形式将一个字符串写给指定的流文件16、整数类型文件习格式输出 (文件类型 * 输出流, 只读的字符类型 *格式, . ) ;解释:以格式化形式将一个字符串写给指定的流文件17、整数类型文件
38、变参格式输入 ( 文件类型 *输入流 , 只读的 字符类型 * 格式 , 变参类型 参数表 );解释:以格式化形式从流文件中读入一个字符串 ,参数从参数表 中取得18、整数类型文件习变参格式输入 ( 文件类型 *输入流 , 只读的 字符类型 * 格式, 变参类型 参数表 );解释:以格式化形式从流文件中读入一个字符串 ,参数从参数表 中取得19、整数类型文件变参格式输出 ( 文件类型 *输出流 , 只读的 字符类型 * 格式 , 变参类型 参数表 );解释:以格式化形式将一个字符串写给指定的流文件,参数从参数表中取得20、整数类型文件习变参格式输出 ( 文件类型 *输出流 , 只读的 字符类型
39、 * 格式, 变参类型 参数表 ); 解释:以格式化形式将一个字符串写给指定的流文件,参数从参数表中取得21、整数类型文件定位 (文件类型 * 流,整数类型 偏移,整数类型 参考位置 ) ;解释:函数把文件指针移到 参考位置 所指位置的向后 偏移 个字节处 ,参考位置 可以为以下值 : 定位 _文件头 定位 _当前 位置 定位 文件尾22、整数类型文件当前位置 (文件类型 * 流);解释:函数返回定位在流中的当前文件指针位置,以字节表示23、无类型文件复位 (文件类型 * 流);解释:将当前文件指针 流 移到文件开头24、无类型文件清除错误 (文件类型 * 流);解释:清除流 stream 上
40、的读写错误25、无类型文件设置缓冲区 (文件类型 * 流,字符类型 * 缓冲区 ,整数类型 类型 ,无符号 缓冲区大小 );解释:给流指定一个缓冲区 ,大小为 缓冲区大小 ,类型为 类型 , 其值见下表文件宏 _全缓冲:文件是完全缓冲区 , 当缓冲区是空时 ,下一个输入 操作将企图填满整个缓冲区 .在输出时 ,在把任何数据写到文件之 前 ,将完全填充缓冲区 .文件宏 _行缓冲:文件是行缓冲区 . 当缓冲区为空时 , 下一个输入操 作将仍然企图填整个缓冲区 .然而在输出时 ,每当新行符写到文件 缓冲区就被清洗掉文件宏 _无缓冲: 文件是无缓冲的 .缓冲区和缓冲区大小参数是被 忽略的 . 每个输入
41、操作将直接从文件读 ,每个输出操作将立即把数 据写到文件中 .26、整数类型文件关闭 (文件类型 * 流);解释:关闭一个流,可以是文件或设备 ( 例如 LPT1)27、整数类型文件全部关闭 ();解释:关闭所有除标准输入或标准输出外的流28、整数类型文件刷新缓存 (文件类型 * 流);解释:清空缓冲区 流为空指针时清空所有输出流 。 对缓冲区作处理 ,即对读的流,清空缓冲区;对写的流,将缓冲 区内内容写入文件。成功返回()八、 字符串处理函数 习语言字符串处理函数在接口目录下的“习语言字符串 .接口” 文件中声明,包含此接口文件即可直接使用字符串处理函数 (一)国标 GB18030 函数1、
42、整数类型 数字转字母 ( 整数类型 数字 );解释:将 0-15 数字转为 0-F 的十六进制字符。2、整数类型 字母转数字 ( 整数类型 字母 ); 解释:将 0-F 的十六进制字符转为 0-15 数字。3、字类型 字节属性 ( 字节类型 字节值 );解释:21 返回 由国标宏组成的字节属性 , 可通过将返回值与国 标宏相与来判断字节属性 .4、整数类型 字转字符串 ( 汉字类型 字符码,字节类型 * 缓冲 区, 整数类型 缓冲区长度 );解释:将字符或汉字转为字符串 形式存入缓冲区,缓冲区长度必须大于等于 5, 返回转换后的缓 冲区长度,失败返回 05、字节类型 * 字转串 ( 汉字类型
43、字符码 ); 解释:功能:将字符或汉字转为字符串,方便输出。 注意:此 函数为方便单线程程序使用,最近 16 次调用值有效,多线程请 使用字转字符串6、整数类型 字长度 ( 汉字类型 字符码 ); 解释:返回一个字符或汉字的字节长度7、整数类型 字内码转串 ( 汉字类型 字符码,字节类型 * 缓冲 区, 整数类型 缓冲区长度 );解释:将字符或汉字内码转为 16 进制字符串形式存入缓冲区,缓冲区长度必须大于等于 9, 返回 转换后的缓冲区长度,失败返回 08、整数类型 内码串转字 ( 字节类型 * 缓冲区, 汉字类型 * 字指针 ) ; 解释:将字符串作为内码串转为汉字,成功返回已转换字节数,
44、 失败返回 09、整数类型 当前字长度 (字节类型 * 字符串 ); 解释:返回当前字的字节长度, 字符串为空指针时返回 010、汉字类型 取当前字 ( 字节类型 * 字符串 ); 解释:返回字符串当前字内码,字符串为空指针时返回 011、整数类型 前一字长度 ( 字节类型 * 字符串 );解释: 返回字符串当前位置的前一个字长度, 字符串为空指针时返回 0, 否则返回字长度12、汉字类型 取前一字 ( 字节类型 * 字符串 );解释: 返回字符串当前位置的前一个字内码, 如果字符串为空指针时返回 0,否则返回内码13 、汉字类型 串取字 ( 字节类型 * 字符串, 整数类型 位置 );解释:
45、返回字符串指定字节位置的字内码, 字符串为空指针时返回 014、汉字类型 串取字指针加加 (字节类型 * 字符串地址, 整 数类型 位置 ) ;解释: 返回字符串指定字节位置的字内码, 并将指针加偏移后移 到下一个字, 字符串为空指针时 返回 015、汉字类型 串取字指针减减 (字节类型 * 字符串地址, 整 数类型 位置 ) ; 解释:返回字符串指定字节位置的字内码, 并将指针加偏移前移 到前一个字, 字符串为空指针时 返回 016、汉字类型 串取字位置加加 (字节类型 * 字符串, 整数类 型 * 位置指针 ) ;解释: 返回字符串指定字节位置的字内码, 并将位置指针后移一个字, 输入为空
46、指针时 返回 017、汉字类型 串取字位置减减 ( 字节类型 * 字符串, 整数类 型 * 位置指针 ) ;解释: 返回字符串指定字节位置的字内码, 并将位置指针前移一 个字, 输入为空指针时 返回 018、汉字类型 串指针加加 ( 字节类型 * 字符串地址 ) ; 解释:将串指针后移一个字,并返回所指向的字内码,字符串为 空指针时 返回 019、汉字类型 串指针减减 ( 字节类型 * 字符串地址 ) ; 解释:将串指针前移一个字,并返回所指向的字内码,字符串为 空指针时 返回 020、汉字类型 串位置加加 ( 字节类型 * 字符串, 整数类型 * 位置指针 );解释:将串内位置指针后移一个字
47、,并返回所指向的字内码,字 符串为空指针时 返回 021 、汉字类型 串位置减减 ( 字节类型 * 字符串, 整数类型 * 位置指针 );解释:将串内位置指针前移一个字,并返回所指向的字内码,字 符串为空指针时 返回 022、整数类型 串置字 ( 字节类型 * 缓冲区,整数类型 缓冲区 长度,整数类型 位置,汉字类型 字符码 );解释:在缓冲区指定位置存入字内码,不会填充串结尾符,缓冲区长度必须大于位置 +4, 返回写入的字节数 , 失败返回 023、整数类型 串置字指针加加 ( 字节类型 * 缓冲区地址,整 数类型 * 缓冲区长度,整数类型 位置, 汉字类型 字符码 ); 解释:在缓冲区指定
48、位置存入字内码, 并将缓冲区后移到下一个 写入位置, 缓冲区长度必须大于位置 +4, 不会填充串结尾符, 返 回写入的字节数 ,失败返回 024、整数类型 串置字位置加加 ( 字节类型 * 缓冲区,整数类型 缓冲区长度,整数类型 * 位置指针, 汉字类型 字符码 ); 解释:在缓冲区指定位置存入字内码, 并将缓冲区后移到下一个 写入位置, 缓冲区长度必须大于位置 +4, 不会填充串结尾符, 返 回写入的字节数 ,失败返回 025、汉字类型 字偏移串取字 ( 字节类型 * 字符串, 整数类型 字偏移 );解释:取字符串当前位置指定字偏移的字内码, 字符串为空指 针时返回 026、字节类型 * 求
49、字偏移串指针 ( 字节类型 *串指针 , 整数类 型 字偏移 );解释:求字符串指定字偏移的串指针, 字符串为空指针时返回 空指针27 、整数类型 求字偏移串位置 ( 字节类型 * 字符串, 整数类 型 字偏移 ) ; 解释:求字符串指定字偏移的串内位置, 字符串为空指针时返回028、整数类型 移动串指针 ( 字符串类型 * 字符串地址, 整数 类型 字偏移 ) ; 解释:将字符串指针移动指定字偏移,返回移动的字节数, 字 符串为空指针时返回 029 、整数类型 移动串位置 ( 字节类型 * 字符串,整数类型 * 位置指针, 整数类型 字偏移 ) ; 解释:将字符串位置指针移动指定字偏移,返回
50、移动的字节数, 字符串为空指针时返回 030、整数类型 字符串跳过空格 ( 字符串类型 * 串指针 ); 解释: 31 跳过串指针开头的空格、 tab 字符, 返回跳过的字节 数31、整数类型 字符串长度 ( 字符串类型 字符串 ); 解释:32 将返回 0 结尾的字符串字节长度32、整数类型 字符串字数 ( 字符串类型 字符串 ); 解释: 33 将返回 0 结尾的字符串中字个数33、整数类型 是数字 ( 汉字类型 x , 汉字类型 类型); 解释:根据类型参数 判别是否是十进制数字 (0 9), 或 简繁体 数字, 判别是返回真 ,否则返回假。类型可取汉字常量 : 0 :表示全角或半角、
51、半角、全角、简体 、 繁体简,繁体34、整数类型 是英文字母 ( 汉字类型 x , 汉字类型 全半角 ,汉字类型 大小写 ); 解释:是英文字母 (A Z 或 a z) 等同 C语言函数 : isalpha , isupper, islower , 是返回 真, 否则返回 假参数 “全半角 ”可取汉字常量 : 0 :表示全角或半角、 半角 、全角。 参数 “大小写 ”可取汉字常量 : 0 :表示大写或小写、 大写、小写。35、整数类型 是英文字母数字 ( 汉字类型 x , 汉字类型 全半 角 , 汉字类型 大小写 );解释:是英文字母或阿拉伯数字 (A Z, a z, 或 0 9) 等同 C
52、语言函数 : isalnum , 是返回 真, 否则 返回 假 参数 “全半角 ”可取汉字常量 : 0 :表示全角或半角、 半角 、全角。 参数 “大小写 ”可取汉字常量 : 0 :表示大写或小写、 大写、小写。36、整数类型 是双字节字 (汉字类型 x ) ;37、整数类型 是半角字 (汉字类型 x );38、整数类型 是全角字 (汉字类型 x );39、整数类型 是控制字符 ( 汉字类型 x ); 解释:是控制字符 (0 x00 0 x1F 或 0 x7F) 等同 C 语言函数 : iscntrl40、整数类型 是空白字符 ( 汉字类型 x );解释:是空白字符 (0 x09 0 x0D
53、或 0 x20 或 0 xa1a1) 等同 C 语言函数 : isspace41、整数类型 是空格 (汉字类型 x );42、整数类型 是空格跳格 (汉字类型 x ) ;43、整数类型 是十六进制数字 (汉字类型 x ,汉字类型全半 角,汉字类型大小写 ) ;解释:是十六进制数字 (A F, a f, 或 0 9) 等同 C 语言函数 : isxdigit参数“全半角”可取汉字常量 : 0:表示全角或半角、 半角、全角。 参数“大小写”可取汉字常量 : 0:表示大写或小写、 大写、小写。44、整数类型 是国标 2312 编码( 汉字类型 x,汉字类型类 型 );解释:判断是否是 GB2312
54、中编码、汉字、符号。若是返回真, 否则返回假参数“类型”可 取 0:表示国标 2312 编码判别, 符号:表 示国 标 2312 编码符号、 汉字:表示国标 2312 编码汉字45、整数类型 是国标编码 ( 汉字类型 x,汉字类型类型 ); 解释:判断是否是国标编码、汉字、符号。 若是返回 真,否 则返回假参数“类型”可 取 0: GB18030 编码判别, 双字:双 字节国标 编码判别、 四字:四 字节国标编码判别、 汉字:汉字判别(去 除 GB2312 符号区 ) 、 双汉双:字节汉字46、整数类型 是汉字字母 (汉字类型 x ); 解释:判断是否是 不包括 GB2312 符号区的所有 G
55、B2312,GB18030 编码的文字 加上全半角字母47、整数类型 是汉字字母数字 (汉字类型 x );解释:判断是否是 不包括 GB2312 符号区的所有 GB2312,GB18030 编码的文字 加上 全半角字母数字(二)国标转换函数 1、汉字类型 转半角 ( 汉字类型 x ); 解释:将字符转换为半角2、汉字类型 转全角 ( 汉字类型 x ); 解释:将字符转换为全角3、汉字类型 转大写 ( 汉字类型 x ); 解释:将字符转换为大写4、汉字类型 转小写 ( 汉字类型 x ) ; 解释:将字符转换为小写原字符串 , 字符串类型 );原字符串 , 字符串类型);5、整数类型 全角转半角
56、( 字符串类型 输出字符串 , 整数类型 输出字符串长度 解释:返回转换后的字符串字节长度6、整数类型 半角转全角 ( 字符串类型 输出字符串 , 整数类型 输出字符串长度 解释:返回转换后的字符串字节长度 7、汉字类型 数字转中文 ( 整数类型 数字 , 整数类型 大写 ); 解释:将 0-10 转为中文数字 , 大写 =1 表示转为中文繁体数字, =0 表示转为简体,返回 0 表示 输入错误 ,无法转换 , 否则为转 换后国标汉字编码 8、整数类型 中文转数字 ( 汉字类型 中文 ); 解释:将中文数字转换为 0-10 的阿拉伯数字 , 无法转换返回 -1, 否则返回数字编码(三)转换函数
57、1、整数类型 字符串转整数 ( 字符串类型 字符串 , 整数类型 进制 , 字符串类型 * 结束位置 );解释:结束串用于指明整数后续字符的位置, 可以为空指针2、自然数类型 字符串转自然数 ( 字符串类型 字符串 , 整数类 型 进制 , 字符串类型 * 结束位置 );解释:结束位置用于指明自然数后续字符的位置, 可以为空指 针3、双精度类型 字符串转浮点数 ( 字符串类型 字符串 , 字符串 类型 * 结束位置 );解释:结束位置用于指明浮点数后续字符的位置, 可以为空指 针4、字符串类型 整数转字符串 ( 整数类型 整数值 , 字符串类型 输出缓冲区 , 整数类型 缓冲区长度 , 整数类
58、型 进制 ); 解释:进制只支持 2-36, 输出类型 = 05、字符串类型 自然数转字符串 (自然数类型 自然数值 , 字符串 类型 输出缓冲区 , 整数类型 缓冲区长度 , 整数类型 进制 );6、字符串类型 浮点数转字符串 (双精度类型 浮点数值 , 字符串 类型 输出缓冲区, 整数类型 缓冲区长度 , 整数类型 有效位 数);解释:输出缓冲区长度应大于 有效位数 +8 ;成功返回输出缓 冲区, 否则返回空指针7、字符串类型 浮点转字符串 (双精度类型 浮点数值, 整数类 型 精度, 整数类型 *小数点位置指针, 整数类型 * 符号指 针 );解释:精度指明小数点后数字位数,不足补零。
59、小数点位置为 负时表示小数点位于首字符左侧, 符号为 0 表示正, 否则为负。 返回内部静态缓冲区地址 , 下一次调用此函数将改写此静态缓 冲区内容 .(四)字符串操作函数1、字符类型 * 字符串转小写 (字符类型 * 串); 解释:将字符串中的大写字母全部转换成小写字母,并返回转换后的字符串2、字符类型 * 字符串转大写 (字符类型 * 串 ); 解释:将串中的小写字母全部转换成大写字母 ,并返回转换后的 串3、字符类型 * 字符串复制 (只读的 字符类型 * 源串 , 字符类 型 *目标串 );解释:将源串内容复制到目标串中 ,返回目标串 , 不推荐使用4、字符串类型 字符串安全复制 (只
60、读的 字符串类型 源串 , 字符串类型 目标串 , 整数类型 目标串长 ); 解释:字符串安全复制 , 目标串长小于等于源串长时 ,只复制 目 标串长 -1 个字符 , 最后一个字节填充 0.5、字符类型 * 字符串定长复制 (只读的 字符类型 * 源, 整 数类型 复制字节数 , 字符类型 * 目标 );解释:复制 源串中的前 长度个字符到 目标中,返回目标串 , 不推荐使用6、字符串类型 字符串定长安全复制 ( 字符串类型 源串 , 整 数类型 复制字节数 , 字符串类型 目标串 , 整数类型 目标串 长 );解释:字符串定长安全复制 , 目标串长小于等于复制字节数时 , 只复制 目标串长
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 上海科技大学《基础工程学》2023-2024学年第一学期期末试卷
- 上海交通职业技术学院《生物药物制剂工艺》2023-2024学年第一学期期末试卷
- 上海交通大学《立体裁剪应用》2023-2024学年第一学期期末试卷
- 新员工安全管理
- 上海行健职业学院《环境工程施工与概预算》2023-2024学年第一学期期末试卷
- 上海海事职业技术学院《数据库原理与技术》2023-2024学年第一学期期末试卷
- 上海海事大学《产品改良与创新设计》2023-2024学年第一学期期末试卷
- 上海海关学院《金融数据采集》2023-2024学年第一学期期末试卷
- 上海行健职业学院《大学计算机基础(经管类)》2023-2024学年第一学期期末试卷
- 2024年中国木弹簧条市场调查研究报告
- 监理企业技术管理制度
- 幼儿园小班社会《环保小卫士》课件
- 高速铁路概论 课件 第3章 高速铁路车站
- 10kv电力施工方案
- 2024年部编版语文五年级上册全册单元检测题及答案(共8套)
- 译林版(三起)(2024)三年级上册英语期末复习:Unit 1-Unit 8共8套单元测试卷汇编
- 2024基层医疗机构院感防控管理能力提升培训考核试题及答案
- 2020海湾JTW-LD-GST85B缆式线型感温火灾探测器
- 微测网题库完整版行测
- 2024应急管理部国家自然灾害防治研究院公开招聘34人(高频重点提升专题训练)共500题附带答案详解
- 俄语入门智慧树知到期末考试答案章节答案2024年吉林师范大学
评论
0/150
提交评论