小编Tol*_*ASP的帖子

如何在termios库中表示标志?

我是C和驱动程序编程的新手.目前,我正在编写用户空间驱动程序,使用Debian通过USB与RS232进行通信.在研究时,我遇到了以下一些代码.

tty.c_cflag     &=  ~PARENB;            // No Parity
tty.c_cflag     &=  ~CSTOPB;            // 1 Stop Bit
tty.c_cflag     &=  ~CSIZE;
tty.c_cflag     |=  CS8;                // 8 Bits
Run Code Online (Sandbox Code Playgroud)

我理解这些行的后果,但是,如果每个控制标志常量(PARENB,CSTOPB等)与这些标志组合的长度相同,则这些操作才有意义.我似乎无法通过任何文件验证这一点(我迄今为止对C的主要不满之一,更难以找到易于理解的文档.)来证实这一点.

我想确保我正确理解程序,因为它是一种纯粹的归纳方法,我不确定为什么这些标志会被存储.有人可以验证这些发现,还是指出我可能会忽略的东西?

防爆.

tty.c_cflag hypothetically is 4-bits long, each of the flags from the
previous code block corresponding to bits 3, 2, 1, 0. Then I believe the
following is how these are stored, if we were to say flags PARENB (3) and
CSTOPB (2) are high, and the other two flags are disabled. 

tty.c_cflag = 1100 …
Run Code Online (Sandbox Code Playgroud)

c serial-port driver termios

3
推荐指数
1
解决办法
5480
查看次数

有没有办法将一系列零作为int输入?

我正在重建70年代的老主脑视频游戏.

用户进行四位数猜测,然后将其记录为矢量.

我知道有一种方法可以将输入作为一个字符串接受,但是如果没有办法用一个单独的int输入来实现这一点,我会发现它很奇怪 - 我无法找到一个方法.

我当前设置它的方式,如果用户提供0003的输入,这将被记录为一个不足的数字错误,因为int的值被解释为简单3.不完全出乎意料,但是真的没办法使用int方法一次取所有四位数?

谢谢!

Ø

/ e考虑到游戏机制,输入3(数字错误不足)应与0003的输入区分开来;

c++ string int cin

1
推荐指数
1
解决办法
179
查看次数

标签 统计

c ×1

c++ ×1

cin ×1

driver ×1

int ×1

serial-port ×1

string ×1

termios ×1