程序编译和运行,但一段时间后,它停止使用Typedef关键字在CPP上工作
program compiles and runs but after sometime it stops working in cpp ,using typedef keyword
我正在使用此代码,但它没有运行。它没有在Dev C 中运行。它运行然后炸毁。
#include <iostream>
using namespace std;
struct Node
{
struct Node* left;
int data;
struct Node* right;
};
typedef struct Node *node;
int main()
{
node n;
n->data = 4;
cout << n->data << endl;
return 0;
}
在使用之前,您需要为n
分配内存,例如:
node n = new Node;
显然, n
变量只是指向谁知道在哪里的指针。您需要分配一些可以从中读取数据或写入数据的内存地址。
这应该解决:
node n = new Node;
typedef struct Node *node;
可能会使您有些混乱。
您可以写:
Node* n = new Node;
并删除Typedef,更清楚地知道n
只是一个指针,因此您需要将其指向的某个地址分配给。
相关文章:
- C++:TypeDef使用元组
- Visual Studio 2015:Extern "C" 和 "export" 关键字
- C++中的"inline"关键字
- 如何确保C++函数在定义之前声明(如override关键字)
- 有没有一种方法可以通过"typedef"为重新定义的基本类型定义特征和强制转换运算符
- 为什么在使用typedef时类推导指南会失败
- 谷歌模拟和覆盖关键字
- 结构体 S { int align; } 之间的区别;(struct 关键字后的名称)和 struct { int al
- 如果全局变量默认是外部变量,为什么要添加"extern"关键字?
- 尝试根据类中 typedef 的存在来专门化模板函数
- 如何重新定义MPI_FLOAT,MPI_DOUBLE以 typedef 的方式
- typedef 枚举和枚举类有什么区别?
- 当我从下面的代码中删除关键字 virtual 时,它可以正常工作,否则会出现错误。在这里"virtual"字的意义是什么?
- 为什么"delete"关键字不删除节点?
- 在 typedef 内部使用 const 关键字和在 typedef 外部使用 const 关键字之间有区别吗?
- 程序编译和运行,但一段时间后,它停止使用Typedef关键字在CPP上工作
- C++typedef中的struct关键字
- 即使typename关键字也会抛出Typedef错误
- C++语法/语义问题:对Function和typedef关键字的引用
- typedef 或在我的命名空间中公开外部库类时使用的 using 关键字