谷歌测试:如何EXPECT_EQ不可打印的ASCII值
Google Test: how to EXPECT_EQ non printable ASCII values
在我的测试中,我在一个字符上针对一些字符(如"a"、"b"等)设置了一个EXPECT_EQ()……到目前为止还不错。
现在我应该针对不可打印的ASCII字符(0xFE)进行测试。我的字符被定义为"char",所以每次对文字0xFE的直接测试都会失败!
char a;
a = 0xFE;
EXPECT_EQ(a, 0xFE); <-- fail!!!
您将254分配给char a
。正如你所知,char
足够宽,可以容纳它没有截断,但它超过了char
[0127]的正范围。它变为负值,积分值为-2。因此,它整体上不等于254则CCD_ 4失败。
因此,在EXPECT_EQ
中,必须坚持与unsigned进行比较a
:中的整数值
char a;
a = 0xFE;
EXPECT_EQ((unsigned char)a, 0xFE);
相关文章:
- 打印从 0 到 255 的所有 ASCII 字符
- 无符号字符打印其 ASCII 值
- 将char类型指定给int以打印相应的ASCII字符
- 在控制台中以C++打印(并存储)高 ASCII 字符 (╔)
- 如何以这种方式在 C++ 中打印 ASCII 代码值
- 没有得到 ASCII 编号 = 7 的字符串打印输出
- 使用整个可打印的ASCII字符集C rot-13
- 打印ASCII图表
- 如何在C 中打印字符串的ASCII代码
- 如何打印混合 ASCII 字符和 Unicode 的字符串的每个字符
- 为什么以下程序C++打印字符串的 ascii 值而不是字符?
- 谷歌测试:如何EXPECT_EQ不可打印的ASCII值
- Tizen IDE中的本机应用程序:签名崩溃并打印奇怪的非ASCII字符
- 如何在C++中打印int的ASCII值
- 预打印C/C++中击键的ascii值
- 将"ascii art"打印 f放入字符数组中?
- 字符的ASCII码可以像在C语言中那样在c++中打印吗?
- ASCII码打印逻辑
- 打印存储在c中的字符的ASCII码,需要解释
- 我读取了一个char类型的变量,然后打印出ascii代码.为什么如果我按回车键,什么都没有