gpt4 book ai didi

c - Linux C Ncurses 问题

转载 作者:行者123 更新时间:2023-11-30 16:08:17 25 4
gpt4 key购买 nike

我在使用 C 语言的 Ncurses 时遇到了一个奇怪的问题,我似乎无法在任何地方或网络上找到该问题的记录。也许我没有使用正确的搜索词?

问题是这样的:

我有几个窗口和面板以及很多代码。一切都很完美,直到发生这种情况:

mvwprintw(windowptr[i], y, x, NULL); <-- That NULL value is what sets off the bomb

我希望 NULL 字符串只会打印长度为 0 的字符串,但事实并非如此。实际发生的情况是它损坏了我所有的窗口/面板。它似乎以某种方式删除了所有以前写入的字符,并禁止在除当前窗口/面板之外的所有窗口/面板上显示新字符。当前窗口/面板不会被清空,但不能向其打印新字符。

这是一个错误吗? ...或者可能是一个未记录的功能?

这是我的 Ncurses 版本:

$ dpkg -l | grep -i ncurse
ii libncurses5:amd64 6.0+20160213-1ubuntu1 amd64 shared libraries for terminal handling
ii libncurses5:i386 6.0+20160213-1ubuntu1 i386 shared libraries for terminal handling
ii libncurses5-dev:amd64 6.0+20160213-1ubuntu1 amd64 developer's libraries for ncurses
ii libncursesw5:amd64 6.0+20160213-1ubuntu1 amd64 shared libraries for terminal handling (wide character support)
ii libncursesw5:i386 6.0+20160213-1ubuntu1 i386 shared libraries for terminal handling (wide character support)
ii mtr-tiny 0.86-1ubuntu0.1 amd64 Full screen ncurses traceroute tool
ii ncurses-base 6.0+20160213-1ubuntu1 all basic terminal type definitions
ii ncurses-bin 6.0+20160213-1ubuntu1 amd64 terminal-related programs and man pages
ii ncurses-term 6.0+20160213-1ubuntu1 all additional terminal type definitions

最佳答案

实际上(没有示例 MCVE )可以在这个问题中进行测试),ncurses 会检查此空指针,并预计会忽略在 wmove 之后调用的 printw 部分。

要查看此内容,请按照源代码操作:

关于c - Linux C Ncurses 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59393188/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com