递归火山软件开发平台

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 火山 源码 类库
查看: 2078|回复: 5
打印 上一主题 下一主题

[视窗] 更合适的标准输入

[复制链接]

67

主题

958

帖子

4224

积分

核心用户

Rank: 9Rank: 9Rank: 9

积分
4224
跳转到指定楼层
楼主
发表于 2023-9-30 16:55:32 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 hcwanz 于 2023-10-1 17:13 编辑

我记得我以前发过一次,不过当时好像论坛出问题了,可能被夹了。

火山现在标准输入用的主要是_getch这个方法,但这个方法不支持中文,导致吴总在标准输入里套了一层。但其实是有支持中文的_getwch,完全没必要这么麻烦。


这是我自己当时弄得,吴总不想弄可以直接复制进火山里。
<火山程序 类型 = "通常" 版本 = 1 />

方法 "//标准输入" <公开 静态 类型 = 文本型 注释 = "在标准输入设备上请求输入一行文本,返回用户所输入的内容." 注释 = "注意本方法只能在控制台程序中使用." 折叠2
        @视窗.外部头文件 = "<conio.h>">
参数 是否回显 <类型 = 逻辑型 注释 = "决定输入时是否显示所输入字符" @默认值 = 真>
{
    变量 结果变量 <类型 = 文本型>
    变量 符 <类型 = 字符>
    判断循环 (真)
    {
        符 = 标准输入字符 (是否回显)
        如果 (符 == '\r')
        {
            符 = '\0'
        }
        加入字符 (结果变量, 符)
        如果 (符 == '\0')
        {
            跳出循环
        }
    }
    删自身尾空 (结果变量)
    返回 (结果变量)
}

方法 "//标准输入字符" <公开 静态 类型 = 字符 注释 = "在标准输入设备上请求输入并返回一个字符." 注释 = "注意本方法只能在控制台程序中使用." 折叠2
        @视窗.外部头文件 = "<conio.h>" @禁止流程检查 = 真>
参数 是否回显 <类型 = 逻辑型 注释 = "指定是否回显所输入的字符" @默认值 = 真>
{
    @ return (TCHAR)(@<是否回显> ? _getwche () : _getwch ());
}                                                                                                                                                                           顺便把标准输出的格式化输出也加一下呗,取格式文本里还说让参考c的标准输出的注释,结果火山里直接简化掉了。



6517e1ecaeb29.png (67.2 KB, 下载次数: 14)

6517e1ecaeb29.png
回复

使用道具 举报

36

主题

545

帖子

2664

积分

金牌会员

Rank: 6Rank: 6

积分
2664
沙发
发表于 2023-9-30 19:12:05 | 只看该作者
厉害了

回复

使用道具 举报

403

主题

2450

帖子

8039

积分

核心用户

Rank: 9Rank: 9Rank: 9

积分
8039
板凳
发表于 2023-9-30 20:03:18 来自手机 | 只看该作者
从来没用过标准输入。。不知道什么情况下用得上?
回复

使用道具 举报

67

主题

958

帖子

4224

积分

核心用户

Rank: 9Rank: 9Rank: 9

积分
4224
地板
 楼主| 发表于 2023-9-30 20:31:46 | 只看该作者
shuimiao 发表于 2023-9-30 20:03
从来没用过标准输入。。不知道什么情况下用得上?

写命令行程序,最近研究linux,感觉命令行就是比图形化的方便
回复

使用道具 举报

403

主题

2450

帖子

8039

积分

核心用户

Rank: 9Rank: 9Rank: 9

积分
8039
5#
发表于 2023-9-30 21:16:55 来自手机 | 只看该作者
hcwanz 发表于 2023-9-30 20:31
写命令行程序,最近研究linux,感觉命令行就是比图形化的方便

在win下面没人喜欢用命令行吧,普通用户也没人会命令行方式,就算整图形界面还很多人不会操作,何况命令行,感觉这个标准输入输出有点鸡肋。我写这么多软件完全没有标准输入这个用途
回复

使用道具 举报

67

主题

958

帖子

4224

积分

核心用户

Rank: 9Rank: 9Rank: 9

积分
4224
6#
 楼主| 发表于 2023-9-30 21:19:24 | 只看该作者
本帖最后由 hcwanz 于 2023-9-30 21:37 编辑
shuimiao 发表于 2023-9-30 21:16
在win下面没人喜欢用命令行吧,普通用户也没人会命令行方式,就算整图形界面还很多人不会操作,何况命令 ...

主要是自己写自己用的时候方便,不用搞什么窗口
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|递归火山软件开发平台 ( 鄂ICP备18029190号 )

GMT+8, 2024-9-28 00:40 , Processed in 0.096605 second(s), 20 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表