Tag: 签名

C / C ++将signed char打包成int

我需要将四个带符号的字节打包成32位整数类型。 这就是我的目标: int32_t byte(int8_t c) { return (unsigned char)c; } int pack(char c0, char c1, …) { return byte(c0) | byte(c1) << 8 | …; } 这是一个很好的解决方案? 它是便携式的(不是通信意义上的)吗? 有没有现成的解决方案,也许是提升? 问题我最关心的是将负位从char转换为int时的位顺序。 我不知道应该是什么样的正确行为。 谢谢

如何使用GSOAP for C和C ++访问Amazon AWS S3?

我到处寻找这个,我找不到一个像样的代码。 如何使用GSOAP访问Amazon AWS S3服务?

签署一个字符是什么意思?

鉴于有符号和无符号整数使用相同的寄存器等,并且只是不同地解释位模式,C字符基本上只是8位整数,C中有符号和无符号字符之间的区别是什么? 我理解char的签名是实现定义的,我根本无法理解它是如何产生影响的,至少当char用于保存字符串而不是数学时。

签名int范围混乱

这个问题可能是非常基本的,但我只是在谷歌搜索几天之后,以及我对C中签名整数的正确基本理解。 实际上有人说签名int有范围 -32767到32767和其他人说它有范围 -32768到32767 让我们得到int a = 5(签名/让我们考虑只有1个字节) * a = 5的第一个表示forms为00000101为正数,a = -5表示为10000101(因此范围-32767至32767对齐)(此处msb /符号位为1/0,数字为正数/负和rest(幅度位)不变) * a = 5的第二个表示forms为00000101为正数,a = -5表示为11111011(msb被视为-128,其余位被操纵以获得-5)(因此范围-32768以32767为理由) 所以我在这两件事之间混淆了。 我怀疑是c,1)或2)中signed int的实际范围是多少

C:将签名转换为无符号

其实我(可能)是一个“简单”的问题。 所以我不知道如何将有符号整数转换为无符号整数。 我的代码: signed int entry = 0; printf(“Decimal Number : “); scanf(“%d”, &entry); unsigned int uEntry= (unsigned int) entry; printf(“Unsigned : %d\n”, uEntry); 如果我将无符号值发送到控制台(参见我的上一个代码行),我总是得到一个有符号整数。 你能帮助我吗? 非常感谢! 亲切的问候,亲

任何将’char’作为’unsigned’的编译器?

除非用户在文件或项目设置中明确提到,否则是否有任何C编译器将默认类型的char作为unsigned? / Kanu_

为什么在char变量中存储255会在C中给出它的值-1?

我正在读一本C书,作者提到了一篇文章: “ if ch (a char variable) is a signed type, then storing 255 in the ch variable gives it the value -1 ”。 任何人都可以详细说明吗?

什么是整数文字类型? 以及他们如何存储?

我刚刚开始学习C,现在有一个问题让我烦恼了一段时间。 如果我写 int i = -1; unsigned int j = 2; unsigned int k = -2; 整数文字-1和2和-2的类型是什么,它如何转换为存储在signed int和unsigned int ? 有符号整数是什么意思,变量或整数字的属性呢? 像-2是有符号整数, 2是无符号整数?

检查C /本机代码中的.apk-signature

我开发了一个Android应用程序,它还包含用C编写的本机部分(不依赖于应用程序)。 如果共享库不起作用,则应用程序本身是无用的。 我想让native-part(共享库)只做它的工作,如果它已经附带了一个未经修改的应用程序版本(.apk)。 对我来说最好的方法就是这样: 应用程序已安装 共享库检查应用程序/ .apk的签名/哈希 只有在签名与已知签名匹配时才能正常工作 通过这种方式,我想保护我的应用程序免受修改和盗版。 这样做有什么提示吗? 我刚刚在java中找到了检查自己签名的post,但如果可以解开并重新编译应用程序,这就是无聊的。

为什么我们将INT_MIN定义为-INT_MAX – 1?

AFAIK这是一个标准的“习语” # define INT_MIN (-INT_MAX – 1) # define INT_MAX 2147483647 问题:为什么INT_MIN的定义不是-2147483648?