Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ionic-framework/2.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++ - Fatal编程技术网

C++ 当我们将一个结构指针指定给另一个指针时,为什么';我们不能直接使用指定的指针访问数据吗?

C++ 当我们将一个结构指针指定给另一个指针时,为什么';我们不能直接使用指定的指针访问数据吗?,c++,C++,我做过类似的事情 struct node { int data; node *next; } node *n1 = n; 当我试图访问n1->数据时,它告诉我访问被违反。使用或。代码可能是由取消引用未初始化指针时生成的未定义行为引起的 鉴于您的: struct node { int data; node *next; } 如果您声明: node *n; node *n1 = n; n->data和n1->data都会导致UB。这种行为可能有几个原因。其中一些

我做过类似的事情

struct node
{
    int data;
    node *next;
}
node *n1 = n;
当我试图访问n1->数据时,它告诉我访问被违反。

使用或。代码可能是由取消引用未初始化指针时生成的未定义行为引起的

鉴于您的:

struct node
{
    int data;
    node *next;
}
如果您声明:

node *n;
node *n1 = n;

n->data
n1->data
都会导致UB。

这种行为可能有几个原因。其中一些是

  • 从中分配的原始指针未正确初始化

    节点*n1;
    节点*n2;
    
    coutplz发布使用相关代码发布实际代码,这不会编译。但是您可能没有正确分配n ptr。访问冲突通常意味着您正在使用无效指针。使用调试器逐步检查代码,找出错误所在。
    node*n1=n很好。
    n
    一定有问题。发布显示问题的完整程序。