Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-apps-script/6.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++ 应用程序出现错误的应用程序名称问题_C++_Visual Studio 2005 - Fatal编程技术网

C++ 应用程序出现错误的应用程序名称问题

C++ 应用程序出现错误的应用程序名称问题,c++,visual-studio-2005,C++,Visual Studio 2005,我有一个如下所示的代码 if ((client == NULL) || (client->type == Leave_Agent)) { if (((client == NULL)|| (client->type == Leave_Agent)) && (client->type == 0)) { 但当我用下面的代码更改它时,我在事件日志中得到了错误 修改后的代码如下所示 if ((client == NULL) || (client->type ==

我有一个如下所示的代码

if ((client == NULL) || (client->type == Leave_Agent)) {
if (((client == NULL)|| (client->type == Leave_Agent)) && (client->type == 0)) {
但当我用下面的代码更改它时,我在事件日志中得到了错误 修改后的代码如下所示

if ((client == NULL) || (client->type == Leave_Agent)) {
if (((client == NULL)|| (client->type == Leave_Agent)) && (client->type == 0)) {
事件日志中的错误为

Faulting application name: test.exe, version: 8.0.16.0, time stamp: 0x5036427e

任何一个物体都能告诉我如何修复这个,这会停止我的应用程序,并且&操作符会在C++中提出任何问题?

< p>我想你想移动(),这样你就永远不会去引用指针,如果它是空的:

if ((agent == NULL)|| ((agent->type == SPUES_ntAgent) && (agent->type == 0))) {
如果代理为
NULL
,则
&&
的左侧将始终为true,并且将始终访问
agent->type
。因此
NULL
代理确保
NULL
解引用


您应该更改代码,以确保只有当它不为NULL时才取消引用。

问题是您可以达到此目的

agent->type == 0
代理==NULL时


我无法在不知道您期望的行为的情况下评论如何修复。至少你应该确保
代理
没有被取消引用,如果它是
==NULL

你指的是@flex?vettori提到的那一个,那就可以了:-)取消引用意味着什么,我之前遇到的问题是什么?@vettori取消引用意味着访问指针后面的内容。访问指向的对象。它成功了,但是什么是去引用,你能用一句简单的话解释一下吗,我想知道我们之前讨论的逻辑问题getting@vettori取消引用仅仅意味着拿起一个指针,看看它指向的是什么。如果指针为NULL,则这是不合法的,因此通常在这样的情况下,您会安排运算符以确保表达式的计算在其解引用可能为NULL的内容之前停止。