腾讯云
开发者社区
文档
建议反馈
控制台
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
登录/注册
精选内容/技术社群/优惠产品,
尽在小程序
立即前往
文章
问答
(9999+)
视频
沙龙
1
回答
从
DWORD
到
64位
指针
的
类型
转换
警告
c++
、
visual-c++
旧
的
32位C++应用程序(MS Visual Studio)
的
代码行如下: m_value = (PUCHAR)someDWORD; 其中PUCHAR是指向无符号字符
的
指针
。现在我已经改成了64位,并且我得到了一个关于
从
DWORD
到
64位
指针
转换
的
(有效)
警告
。我对此
的
不合格解决方案是这样写
的
: m_value = (PUCHAR)(DWARD_PTR)someD
浏览 31
提问于2019-09-18
得票数 1
回答已采纳
2
回答
为什么会有一个
警告
从
字符**
到
无效**,而不是
从
焦炭*
到
无效*?
c
、
pointers
我对C很陌生,一直在用
指针
练习。我知道void *
指针
接受任何
类型
的
指针
,所以这很好:{ functionWithDoubleVoidPointer(doublePointer);给我一个
警告
:
警告
:从不兼容<em
浏览 4
提问于2021-03-24
得票数 0
回答已采纳
5
回答
指向字符
的
指针
与指向单词
的
指针
的
区别
c++
、
c
、
embedded
、
lint
我一直收到Lint (
的
740)
的
警告
,它
警告
我不要将指向联合
的
指针
转换
为指向无符号长整型
的
指针
。我知道我是在强制
转换
不兼容
的
类型
,所以我使用了一个reinterpret_cast,但我仍然收到了
警告
,这让我很惊讶。writeDWordsToHwRegister(reinterpret_cast<unsigned long*> (&(a.<em
浏览 0
提问于2012-07-20
得票数 1
2
回答
uintptr_t与
DWORD
_PTR
的
使用
c++
、
types
、
stdint
两者都用于存储地址和执行
指针
算法,都是在WinAPI中定义
的
,我什么时候应该使用uintptr_t (cstdint)和
DWORD
_PTR (Windows.h)?在x86和x86_64中,两者分别为32位和64位
DWORD
_PTR是用于
指针
精度
的
unsigned long
类型
。当将
指针
转换
为unsigned long
类型
以执行
指针
算法时,将使用该方法。
DWORD
_PTR也通常
浏览 4
提问于2015-08-19
得票数 2
回答已采纳
2
回答
DWORD
在LPVOID返回
的
类型
是什么?
c++
、
pointers
、
casting
在C++中,当
类型
转换
时,我有时会感到困惑,它们到底会返回什么?LPVOID lpFunction;更多一般性
的
解释将不胜感激。谢谢
浏览 1
提问于2016-06-26
得票数 2
回答已采纳
2
回答
升级这些c++样式
的
c++ API
的
HtmlHelp方法是什么?
c++
、
mfc
、
html-help
升级这些c++样式
的
c++ API
的
HtmlHelp方法是什么?CHM files use 3 letter suffix HtmlHelp((
DWORD
_PTRShellExecute(nullptr, nullptr, strURL, nullptr, nullptr, SW_SHOWDEFAULT);具体地说: HtmlHelp((
DWORD
_PTR)(L
浏览 19
提问于2021-11-25
得票数 4
回答已采纳
1
回答
使用代码注入进行游戏
的
c++程序
的
一部分
c++
、
windows
、
assembly
)-1;{ int _bufferPosition = 0;}; 这是开放源码游戏“遗忘:黑暗
的
下降”( Amnesia: the Dark Descent )
的</e
浏览 0
提问于2023-05-22
得票数 2
回答已采纳
1
回答
C:使用32位程序时,在Windows 64位计算机上将int强制
转换
为int*时出现
警告
c
、
windows
、
pointers
、
x86
、
clang
我正在开发一个遗留
的
32位程序,其中有许多像
DWORD
* a= (
DWORD
*)b这样
的
强制
转换
,其中b是一个本机int,我收到了很多这样
的
警告
: Cast to '
DWORD
*‘(aka 'unsignedint*') from smaller integer type 'int’['clang:-Wint-to-pointer-cast] 因为在编译过程中大小是相等
的
,所以这没问
浏览 102
提问于2021-02-27
得票数 0
回答已采纳
4
回答
假设两个指向同一个变量
的
指针
是非法
的
/UB,为什么C编译器不能优化更改const
指针
的
值呢?
c
、
rust
、
undefined-behavior
、
strict-aliasing
= 0; mov
dword
ptr [rdieax,
DWORD
PTR [rsi] test eax, eax在Rust中,这是不允许
的
,所以编译器可以优化它。 现在来回答我
的
问题: 该函数接受一个 这就是 指向const
浏览 105
提问于2021-02-01
得票数 63
回答已采纳
3
回答
转换
指针
类型
的
正确方法
c++
、
pointers
、
casting
、
reinterpret-cast
、
static-cast
考虑
到
(以及
的
事实): VirtualAlloc(NULL, cbAlloc, MEM_COMMIT, PAGE_READWRITE));我曾经认为reinterpret_cast可以用于将
指针
转换
为整数
类型
(例如
DWORD
_PTR),但是
从
void*
转换
为BYTE有没有什么(微
浏览 0
提问于2013-03-23
得票数 62
回答已采纳
1
回答
指针
位大小
codesys
CODESYS 说 两个
指针
之间差异
的
结果是
DWORD
类型
,即使在64位平台上,当
指针
是64位
指针
时也是如此。由此,我猜到codesys中
的
指针
在x86平台上是32位,在x64平台上是64位。这是真的吗?我试着在模拟模式下运行CODESYS_Control_Win_V3和CODESYS_Control_Win_V3 x64 (CODESYSS3.5 SP16),在这两种情况下
指针
都是64位,但是我没有真正
的
编辑:奇
浏览 3
提问于2020-09-04
得票数 1
回答已采纳
1
回答
LoadLibrary('user32.dll')返回14007
c++
、
crash
、
user32
这是我使用
的
代码: ExitProcess(0);printf("%d\n", GetLastError()); //14007
DWORD
paMessageBoxA = (
DWORD
)GetProcAddress(hUse
浏览 14
提问于2017-06-29
得票数 1
回答已采纳
1
回答
DirectShow -将IGraphBuilder *
转换
为双精度(C++)
c++
、
windows
、
winapi
、
casting
、
directshow
GameMaker工作室仅支持空、字符*或双精度
类型
的
函数返回
类型
。对于参数,仅支持char *和double。这意味着我必须将我需要
的
所有其他
类型
转换
为这些
类型
之一。这是我能做
的
最好
的
了。我不知道这是否是导致问题
的
原因,但我在想,我
转换
类型
的
方式是为什么它表现得很时髦。要将IGraphBuilder *
转换
为双精度值作为返回值,我
的</
浏览 2
提问于2017-07-17
得票数 0
2
回答
混叠和
指针
-可
转换
性
c++
、
pointer-aliasing
、
pointer-conversion
考虑
到
以下代码:struct X {fn(X const&, int&): mov
DWORD
PTR [rsi], 2如果成员t不存在,则X和int
类型
是
指针
可
浏览 5
提问于2020-01-28
得票数 2
回答已采纳
3
回答
为什么(void **)
类型
可以分配给(void *)或(int *)?
c
、
pointers
这是我
的
C代码:{ void ** ptr_2void; return0;我只是想知道为什么这个代码是有效
的
?我已经将一个(void *)分配给(void **),编译器甚至在没有
警告
的
情况下也会传递它。
类型
看起来不匹配。下面将(void **)分配给(int *)
的
代码也能工作。
浏览 2
提问于2013-12-24
得票数 11
回答已采纳
4
回答
可变变量作为函数
的
参数
c
、
pointers
、
arguments
、
warnings
、
volatile
volatile int COUNT; 我无法摆脱一些
警告
我在functionOne原型上得到了这个
警告
1
警告
强制
转换
从
指针
浏览 2
提问于2010-07-21
得票数 9
1
回答
将32位地址
的
类型
转换
为(字节*)和(
DWORD
*)有什么区别?
c++
、
windows
、
byte
、
portable-executable
、
dword
我
的
程序运行在32位Windows上,所以虚拟内存空间中
的
地址
类型
是
DWORD
。我想通过更改IAT中API
的
地址来挂钩API。因此,我首先得到目标进程图像
的
基址。我将g_hCurrentProcessBase
转换
为BYTE*
类型
,但在开始时,我将其
转换
为
DWORD
*
类型
,如下所示: IMAGE_OPTIONAL_HEADER32* pOptionalHeader=(IMAGE_OPTIONAL_HE
浏览 1
提问于2016-09-29
得票数 0
回答已采纳
2
回答
从
另一个地址获取指向
的
地址
c++
、
c
、
pointers
、
memory-address
在实践中,我试图得到某个内存地址所指向
的
地址。我有一个工具,它显示了我必须得到
的
结果。我已经有了clientApp.exe
的
基本地址。我用
的
是EnumProcessModules和GetModuleFileNameEx。sizeof(szModName) / sizeof(TCHAR))) if(gameName.compare(szModName)) dwClientBase = (
DWORD
但下面的结果给了我另一个结果:
DWORD
浏览 4
提问于2013-01-27
得票数 1
回答已采纳
1
回答
警告
C4267“初始化”:将“size_t”
转换
为“
DWORD
”,可能会丢失数据
c++
、
c++11
在编译我
的
C++应用程序时,我会收到以下
警告
消息,
DWORD
nPos = strRegPath.find(REG_SOFTWARE); 宣言:wchar_t* m_wsz
浏览 0
提问于2019-09-16
得票数 1
回答已采纳
4
回答
为什么
从
main()返回NULL?
c++
、
c
、
null
、
return
、
return-value
有时,我会在C和NULL程序中看到使用main()作为main()返回值
的
编码器,例如:{}
警告
:返回使整数
从
指针
没有强制
转换
这是合理
的
,因为宏NULL应该扩展
到
(void*) 0,而main
浏览 11
提问于2020-01-31
得票数 10
回答已采纳
点击加载更多
扫码
添加站长 进交流群
领取专属
10元无门槛券
手把手带您无忧上云
相关
资讯
Window api(一)
Windows数据类型
每周一练|JAVA笔面必刷!
收藏:一篇文章读懂PHP程序之数据类型转换与数组
Net调用非托管代码
热门
标签
更多标签
活动推荐
运营活动
广告
关闭
领券