问题标签 [dword]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
676 浏览

c# - C# UInt vs Cpp DWORD 与负值冲突

C++:DWORD dwState = (DWORD)-1;

这里没有问题。

C#: uint state = -1;

在这里,被认为等同于 DWORD 的 uint 或 UInt32 不能有负值,它会抛出异常。

对于 UInt32,值太大或太小

我有一个代码可以从 cpp 和 c# 程序中读取这个值(存储在 DB 中)。Cpp 将无效状态标记为 -1。因此,我无法使用 uint 类型从 C# 前端读取它。我无法在 c++ 程序中更改此类型。除了 -1,cpp 可以为变量写入 0-65536 之间的任何值。

我该如何从 C# 前端处理它!?

0 投票
1 回答
562 浏览

c - 装配操作员 AND

为了继续这个: 调试 C 程序(int 声明) 我决定测试更多的代码,看看编译器对它的反应。所以我决定试试这个来测试局部变量:

好的,我这样做了 int a,b,c... 只是为了测试 main 的帧大小并看到 sub $0x10,%esp 长大,(我在 linux 下,所以这就是为什么可能是 sub),现在到 sub $0x30,%esp 所以这里是带有“disas main”命令的 gdb 输出:

这一行:0x0804841f <+3>:and $0xfffffff0,%esp 什么是and运算符,为什么会有很大的数?

以及为什么 movl 命令中的偏移量不是负数,例如:movl $0xa,-0x4(%ebp) 到目前为止,我知道 AND 是逻辑运算符,例如 1 和 1 是 1、0 和 0 是 0、1 和 0 是 0 等等......如果是在这种情况下,%esp 的 ebp 值是调用主函数的基帧地址。

你们中的任何人都可以解释为什么会这样编译吗?

我想我错过了一些东西。编辑:我在stackoverflow上看到了一些“话题”在谈论这个。准备分享:link1 link2 link3

0 投票
1 回答
3215 浏览

c++ - (DWORD)、*(DWORD*) 和 (DWORD*) 之间有什么区别?

标题中的问题也指定了......

(DWORD),*(DWORD*)和 和有什么区别(DWORD*)

一个例子:

希望你能帮我...

0 投票
2 回答
48 浏览

arrays - 查询几个线程术语

我正在理解并在我的应用程序中实现线程的概念。从现在开始,事情进展顺利。但是我还有几个问题没有得到解答,它们现在让我变慢了。如果有人回复他们中的任何一个,我将不胜感激

  1. 在 Createthread() 中,我们可以只取 1 个参数吗?正如我在 MSDN 网站和我看到的所有其他示例中看到的那样,我只看到了 1 个参数 LPVOID。

  2. 另一件事是,返回值 DWORD WINAPI 作为返回值是什么意思?我们可以只有 DWORD 、 int 或任何其他返回类型吗?我想它与 HANDLE 有关(可能是)

  3. 我想使用线程的数组,因此我将数组学习为函数,并且(据我所知)线程本身只是一个由 CreateThread() 例程调用的函数,因此我尝试在那里实现该概念但不能因为返回类型的 DWORD WINAPI 不允许我这样做?

  4. 我有一个用于保存文件的线程,现在我想要它的数组,以便我可以同时保存多个文件(不是完全相同的开始时间,而是一种并行文件保存)。我怎样才能做到这一点?

谢谢山

0 投票
3 回答
1900 浏览

c - C:数组的4个元素到一个DWORD

现在我可以将数组 ( char*data) 中的 4 个字节(已知起始位置,非 0)复制到 aDWORD吗?

这有两个部分:首先,从指定位置的数组中获取 4 个字节(4 个元素,每个元素是一个 char,在 C 中是 1 个字节),然后将它们移动到一个 DWORD。

我也不知道该怎么做。

谢谢!

0 投票
4 回答
5829 浏览

c++ - C++ 指针作为 DWORD

在 C++ 中,我可以简单地将指针转换为 DWORD 吗?

那行得通吗?

0 投票
0 回答
130 浏览

pointers - PUSH WORD bx 如何改变堆栈?

EAX 是 102 = x86 程序集中的套接字调用。

这是我的问题。堆栈如何处理此代码:

像这样:

或者像这样:

基本上,它是假设 4 个字节还是只推送一个字节?另外,如果我要推送另一个单个字节,它会被推送到一个新的“盒子”还是同一个“盒子”?

0 投票
0 回答
1055 浏览

node.js - Modbus:在nodejs中将十六进制值转换为dword

使用 modbus 作为通信协议的仪表手册中给出的规格:

我有这个 hexValue : 00003ef5

在哪里highword = 0000lowword = 3ef5

所以 rx 将是3ef5,这转换为十进制给出16,117.

现在我已经使用了这个:

有没有办法使用nodejs缓冲区库或任何其他比这更好的方法将我的十六进制值直接转换为dword?

0 投票
0 回答
1247 浏览

c++ - C++ CListCtrl - GetItemData() 返回错误值?

我有一个带有 SQL 后端的 C++ 应用程序,并且根据需要在列表控制行上使用 SetItemData() 存储任何检索到的列(数据库中的整数、主键 bigint)的行 ID。如果需要查询该 ID,则使用 GetItemData() 检索该 ID。

我现在遇到了一个奇怪的问题,在这种情况下,GetItemData() 返回一个随机的 7 位数字而不是存储的 ID。当我添加行时,我使用以下代码:

要检索和检查值,我可以执行以下操作(我已确定 nCurrentlySelectedIndex 是正确的):

奇怪的是,如果我在第一批代码之后直接运行第二批代码,一切都很好。但是如果我在一个单独的函数中运行它,msgID 会被设置为一组随机的 7 位数字,每次都不同。

有谁知道是什么原因造成的?

0 投票
1 回答
1326 浏览

c# - 在不强制转换值的情况下获取“Int64”值的低位双字

在不转换值的情况下C#VB.NET如何检索值的DWORD低位Int64

我已经阅读了这个SO 问题,但我仍然不清楚,我与 合作VB.NET,无论如何,答案是:

在许多语言中,您需要做的就是将其转换为 Int32。最高位将被丢弃。

这似乎只适用于C#将其转换为整数:

VB.NET似乎不是因为我试图强制转换它并且我得到了一个典型的算术溢出异常。

我有一个这样的方法来获得一个低阶词Integer

现在我想为 a 编写相同的方法Long来检索 low- DWORD,那么我该如何继续编写呢?: