一起talk C栗子吧(第一百七十五回:C语言实例--获取当前终端的行数和列数)


各位看官们,大家好,上一回中咱们说的是关闭终端中缓冲功能的例子,这一回咱们说的例子是:获取当前终端的行数和列数 。闲话休提,言归正转。让我们一起talk C栗子吧!


看官们,我们在前面章回中介绍了termios相关的信息,以及termios提供的编程接口,通过这些接口可以操作终端,今天我们再介绍一些操作终端的编程接口,通过这些接口可以获取当前终端的行数和列数,这便是我们今天的主题。

int setupterm(char *term, int fd, int *errret);
  • 该函数用来修改当前终端的类型
  • 该函数的第一个参数是char*类型的指针,函数使用它指向的值来修改终端类型;
  • 该函数的第二个参数是文件描述符,通过它可以修改终端类型;
  • 该函数的第三个参数是一个指针,用来保存函数运行的结果;
  • 该函数运行成功时返回1,失败时返回-1或者0.其中-1表示没有终端信息,0表示有终端信息,但是没有匹配的终端;

通常情况下,第一个参数使用空指针,这样就表示获取当前终端的类型;第三个参数也经常使用空指针,这样只需要查看函数的返回值就可以。

int tigetnum(char * capname);
  • 该函数用来获取终端中与数值相关的值;
  • 该函数的参数表示与终端中某个数值对应的名字;
  • 该函数运行成功时返回终端中的与参数对应的数值,否则返回-2;

关于该函数的参数,我们可以使用终端中与行数和列数相对的名字:lines和cols。这样就可以获取到当前终端的行数和列数。我这么一说,看官们是不是想马上动手实现一下?接下来让我们一起动手吧!

    res = setupterm(NULL,fileno(stdout),NULL);

    row_count = tigetnum("lines");
    col_count = tigetnum("cols");

    printf("Terminal row:%d \n",row_count);
    printf("Terminal colum:%d \n",col_count);

我们在代码中首先获取了当前终端中的类型,然后继续获取当前终端的行数和列数,这样便实现的我们的目标。

看官们,以上是核心代码,完整的代码放到了我的资源中,大家可以点击这里下载使用。

下面是程序的运行结果,请大家参考:

Terminal row:56 
Terminal colum:113

该结果显示的是我正在使用的终端行数和列数,大家运行时可能会有不同的结果,这个是正确的,因为不同的终端拥有不同的行数和列数。正所谓世界上没有两片相同的叶子,世界上也没有两个相同的终端,哈哈。此外,在编译时需要手动链接ncurses库,因为这些接口使用了该库中的内容,具体的命令如下:

 gcc GetLineCol1.c  -o end -lncurses

各位看官,关于获取当前终端行数和列数的例子咱们就说到这里。欲知后面还有什么例子,且听下回分解 。


  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
引用:9、ERROR: Could not install packages due to an OSError: [WinError 5] 拒绝访问。: 'E:\\AI\\stable-diffusion-webui\\venv\\Lib\\site-packages\\~-rch\\lib\\asmjit.dll' Check the permissions. 引用:\stable-diffusion-webui-master\venv\Lib\site-packages 引用:1、安装gpu ,速度从一小时加速到3分钟 torch 下载 https://download.pytorch.org/whl/torch_stable.html E:\AI\stable-diffusion-webui\venv\Scripts>pip3.10.exe install https://download.pytorch.org/whl/cu118/torch-2.0.0+cu118-cp310-cp310-win_amd64.whl 这个错误提示"Error loading "D:\AiDraw\stable-diffusion-webui\venv\lib\site-packages\torch\lib\torch_python.dll" or one of its dependencies"通常是由于缺少某些依赖文件或文件权限设置不正确导致的。你可以尝试以下解决方法: 1. 检查文件权限:确保你有足够的权限访问"D:\AiDraw\stable-diffusion-webui\venv\lib\site-packages\torch\lib\torch_python.dll"以及其依赖文件。你可以右键点击文件,选择"属性",然后在"安全"选项卡中检查文件权限。 2. 检查依赖文件:确保你的环境中包含了所有torch_python.dll的依赖文件。你可以尝试重新安装torch或者在官方网站上下载缺失的依赖文件。 3. 更新torch版本:如果你当前使用的是一个过时的torch版本,尝试升级到最新版本,可能会解决这个问题。你可以在torch官方网站上下载最新版本的torch。 4. 检查文件路径:确认你的文件路径是正确的,并且在该路径下存在正确的文件。可能是由于文件路径错误导致无法加载文件。 希望以上解决方法能帮到你解决问题。如果问题仍然存在,请提供更多的详细信息,以便我们能够更好地帮助你解决问题。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [stable-diffusion-webui 安装](https://blog.csdn.net/wuxintdrh/article/details/131102526)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *2* [Stable-Diffusion-Webui: Talk about it briefly](https://blog.csdn.net/m0_72572822/article/details/130087924)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

talk_8

真诚赞赏,手有余香

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值