Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/141.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 有人知道一个好的windows常量列表在哪里吗_C++_Mfc_Constants_Visual C++ 6_Numerical - Fatal编程技术网

C++ 有人知道一个好的windows常量列表在哪里吗

C++ 有人知道一个好的windows常量列表在哪里吗,c++,mfc,constants,visual-c++-6,numerical,C++,Mfc,Constants,Visual C++ 6,Numerical,我正在尝试将无效值设置为-1。。但是我不喜欢神奇的数字。。任何人都知道在哪里可以找到一组公共常量。我在VS6(ish)工作 我试图通过网络读取一个文件,我需要一个错误的总文件大小值,这样我就知道我是否得到了关于它的有效信息。。0是有效的大小,因此我无法使用该大小 哈珀·谢尔比一针见血。。只是一个小拇指。 他提到了win32常量。。这正是我所想的。。现在查找链接:) 编辑:原始问题没有上下文。修改后的问题表示您需要无效的文件大小,因此正在查找win32常量。看,我认为你所寻找的常数可能在或它的一个

我正在尝试将无效值设置为-1。。但是我不喜欢神奇的数字。。任何人都知道在哪里可以找到一组公共常量。我在VS6(ish)工作

我试图通过网络读取一个文件,我需要一个错误的总文件大小值,这样我就知道我是否得到了关于它的有效信息。。0是有效的大小,因此我无法使用该大小

哈珀·谢尔比一针见血。。只是一个小拇指。 他提到了win32常量。。这正是我所想的。。现在查找链接:)


编辑:原始问题没有上下文。修改后的问题表示您需要无效的文件大小,因此正在查找win32常量。看,我认为你所寻找的常数可能在或它的一个子包含中。grep您的windows包含目录;-)

如果-1是系统中返回值的无效值,则应在内部定义它:

const int INVALID_FOO = -1
除非需要C兼容性,在这种情况下

#define INVALID_FOO -1

最好是这样。如果是标准的MFC或Windows资源,请使用无效的\u句柄或其他Win32定义的常量。

通常可以直接使用0和1(正和负)

事实上,使用变量可能会使您的代码更加混乱

更新:好的,在我写下答案后,你更新了你的问题。如果以算术方式使用“-1”,则只使用“-1”即可。如果返回的是错误代码(代码恰好是-1),那么应该使用常量

 const int INVALID_VALUE = -1;

您想使用自己的幻数-1伪装成Windows常量。这是非常误导的

假设我碰巧知道无效的_句柄是0。可以用无效的\u句柄初始化指针吗

char *myMessage = INVALID_HANDLE;
这对您有何影响?

如果读取的字节数小于0
If bytes_read < 0
    // error
EndIf
//错误 恩迪夫
在VS中,创建一个新的windows控制台应用程序项目。进入项目设置并启用浏览支持。创建C++文件并将其添加到项目中。类型:

#include <windows.h>
void main(void) {}
#包括
void main(void){}

进入文件。编译它。现在在文件中键入无效的文件大小。右键单击它并转到无效文件大小的定义。VS将打开许多包含定义值的windows头文件之一。享受。

第一件事是,您应该使用未签名的int作为文件大小,因为文件大小永远不会是负数。现在,无效的文件大小通常是max int,因此在使用32位无符号int的情况下,它将是0xFFFFFF

i、 e


另外,如果这是在windows上,windows.h定义了无效的文件大小all ready(无效的文件大小)

如果要使用WinApi使用的常量,请查看WinError.h、WinUser.h和WinNT.h文件。

我不确定您要的是什么?例如,你为什么不定义你自己的常数?每个人都这么做。。我能做到。。但我宁愿用标准的东西。。比如当你设置LastError时。。。最好使用WINERROR.hironic中的值。这个问题目前的投票无效。让我们保持这种状态。;-)你不能只是问“嘿,我在哪里可以得到一个invaid号码?”。这取决于你调用的域和特定函数。我得到了答案!我不明白在问题上投反对票。这是明确的、具体的、可回答的。我想要一个VS中可用常量的一般列表。我使用-1作为示例,一个用例。也许我的下一个问题应该是什么是最适合学习的语言,或者你最喜欢的颜色咖啡杯。我在寻找win32定义的常量列表。我喜欢enum{INVALID_FOO=-1}@litb:如果我要定义一个枚举,我喜欢给它一个相关的名称,不过如果你不小心的话,可能会有点冗长。因为可读性。。我的留言里有什么。。哦,这是一个无效的句柄。。我不应该用它。谁管它是什么。。无效的\u句柄可能是43264。。如果我测试。如果(myMessage==INVALID_HANDEL)printf(“消息尚未初始化”);对我来说很有用…这真的不是用什么的问题,但是谢谢。我的意思是我要使用一个const/define变量。。我只是在寻找一些windows编程附带的标准配置。像MB_OK或ID_YES,VK_ENTER。。。它们很容易阅读和获取。。有趣的是,每当我问一个真正的问题时,我都会得到选票,没有人会在评论上加上“你能详细说明一下”之类的话。我不是最有经验的程序员,但嘿,我的问题总有一个方向。我没有看到列表,B。我没有看到常数。C.由于bytes_read是一个无符号变量,它永远不会小于0(假设这与问题有关)@baash05:“我试图从网络上读取一个文件,我需要一个错误的总文件大小值,所以我知道我是否得到了关于它的有效信息。0是一个有效大小,所以我不能使用它。”看起来像某个fread()-style函数,返回读取的字节数,或在出错时返回-1(小于0)。
#include <windows.h>
void main(void) {}
const unsigned int INVALID_FILESIZE = 0xFFFFFFFF;