任何人都知道哪里好窗户不断名单生活
题
我想无效的值设置为-1。但我不喜欢幻数..任何人都知道在哪里可以找到一组公共常量。我在VS6(ISH)工作。
我试图读取网络上的一个文件,我需要的总文件大小不好的价值,所以我知道,如果我得到了它有效的信息.. 0是一个有效的大小,所以我不能利用这一点。
哈珀Shelby的撞钉的头部..只是一点点拇指。 他提到的win32常数..这正是我在想。现在要找到一个链接:)
其他提示
如果-1是在你的系统返回值的值无效,则应在内部定义它:
const int INVALID_FOO = -1
除非需要C兼容性,在这种情况
#define INVALID_FOO -1
将是优选的。如果它是一个标准的MFC或Windows资源时,使用INVALID_HANDLE或其他Win32定义的常数之一。
您想使用自己的幻数-1伪装成一个Windows不变。这是非常令人误解。
假设我碰巧知道INVALID_HANDLE为0是否确定与INVALID_HANDLE初始化我的指点?
char *myMessage = INVALID_HANDLE;
请问这个打击吗?
在VS,创建新的Windows控制台应用程序项目。走进项目设置和打开浏览支持。创建一个C ++文件,并将其添加到项目中。类型:
#include <windows.h>
void main(void) {}
到该文件中。编译它。现在键入INVALID_FILE_SIZE到文件中。右键点击它,INVALID_FILE_SIZE的转到定义。 VS会打开很多窗口的一个头完全定义的值的文件。享受。
首先就是作为一个文件的大小是永远不会负你应该使用unsigned int类型的文件大小。现在一个无效的文件大小通常是最大INT所以在使用的情况下的32比特无符号整型这将是0xFFFFFFFF的
即
const unsigned int INVALID_FILESIZE = 0xFFFFFFFF;
此外,如果这是在Windows中,WINDOWS.H定义无效的文件大小都准备好(INVALID_FILE_SIZE)
如果您想使用WINAPI使用的常量,检查出WinError.h中,WINUSER.H和WINNT.H文件。
它通常接受的0和1(正反转)是行直接使用。
在事实上,它可能会令你的代码变得更加令人困惑使用一个变量,而不是。
更新:OK,你更新你的问题后,我写了我的答案。如果您正在使用“-1”算术的方式,那么就“-1”是好的。如果您在返回错误代码(代码恰好是-1),那么你应该使用一个常量。
const int INVALID_VALUE = -1;
If bytes_read < 0
// error
EndIf