使用链表压栈操作失败

2023-12-30

我正在尝试使用单个链表创建堆栈,我的推送操作不会将数据插入链表

这是我到目前为止所尝试过的

typedef struct element {
    int data;
    struct element *next;
}node;

推送方法

void push(node *root, int data) {
    if(root == NULL) {
        root = (node *) malloc (sizeof(struct element));
        root->data = data;
        root->next = NULL;
    }
    else {
        node *temp = (node *) malloc (sizeof(struct element));
        temp->data = data;
        temp->next = root;
        root = temp;
    }
}

在我的主要方法中,我没有malloced 头指针, 这就是我调用 Push 方法的方式,

push(head, data);

如何才能使推送操作生效?


The root指针被修改为push功能。该值不会传播到main。一种方法是返回root指针。

node* push(node *root, int data) {
  if(root == NULL) {
    root = (node *) malloc (sizeof(struct element));
    root->data = data;
    root->next = NULL;
  }
  else {
    node *temp = (node *) malloc (sizeof(struct element));
    temp->data = data;
    temp->next = root;
    root = temp;
  }
  return root;
}

在主要方面,你需要这样称呼它,

head = push(head, data);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用链表压栈操作失败 的相关文章

  • 在 C# 中创建具有单独列的分隔文本

    我一直在尝试在 C 中创建一个制表符限制的文本文件 以便数据正确显示在单独的列中 Firstname Lastname Age John Smith 17 James Sawyer 31 我尝试过 t 字符 但我得到的只是 Firstnam
  • 使用 Unity 在构造函数中使用属性依赖注入

    好的 我在基类中定义了一个依赖属性 我尝试在其派生类的构造函数内部使用它 但这不起作用 该属性显示为 null Unity 在使用 container Resolve 解析实例后解析依赖属性 我的另一种选择是将 IUnityContaine
  • VB.NET 相当于 C# 属性简写吗?

    是否有与 C 等效的 VB NET public string FirstName get set 我知道你能做到 Public Property name As String Get Return name ToString End Ge
  • std::cout 和 std::wcout 有什么区别?

    在c 中 有什么区别std cout and std wcout 它们都控制流缓冲区的输出或将内容打印到控制台 或者它们只是相似吗 它们作用于不同的字符类型 std cout uses char作为字符类型 std wcout uses w
  • 如何修复此错误“GDI+ 中发生一般错误”?

    从默认名称打开图像并以默认名称保存 覆盖它 我需要从 Image Default jpg 制作图形 将其放在 picturebox1 image 上并在 picurebox1 上绘制一些图形 它有效 这不是我的问题 但我无法保存 pictu
  • 在 Unity 进程和另一个 C# 进程之间进行本地 IPC 的最快方法 [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我希望每秒大约 30 次从 C 应用程序向我的 Unity 应用程序传送大量数据 由于 Unity 不支持映射内存和管道 我考虑了 t
  • C++中的类查找结构体数组

    我正在尝试创建一个结构数组 它将输入字符串链接到类 如下所示 struct string command CommandPath cPath cPathLookup set an alarm AlarmCommandPath send an
  • 获取 WPF 控件的所有附加事件处理程序

    我正在开发一个应用程序 在其中动态分配按钮的事件 现在的问题是 我希望获取按钮单击事件的所有事件 因为我希望删除以前的处理程序 我尝试将事件处理程序设置为 null 如下所示 Button Click null 但是我收到了一个无法分配 n
  • 未定义的行为或误报

    我 基本上 在野外遇到过以下情况 x x 5 显然 它可以在早期版本的 gcc 下编译干净 在 gcc 4 5 1 下生成警告 据我所知 警告是由 Wsequence point 生成的 所以我的问题是 这是否违反了标准中关于在序列点之间操
  • 在一个字节中存储 4 个不同的值

    我有一个任务要做 但我不知道从哪里开始 我不期待也绝对不想要代码中的答案 我想要一些关于该怎么做的指导 因为我感到有点失落 将变量打包和解包到一个字节中 您需要在一个字节中存储 4 个不同的值 这些值为 NAME RANGE BITS en
  • Visual Studio 中的测试单独成功,但一组失败

    当我在 Visual Studio 中单独运行测试时 它们都顺利通过 然而 当我同时运行所有这些时 有些通过 有些失败 我尝试在每个测试方法之间暂停 1 秒 但没有成功 有任何想法吗 在此先感谢您的帮助 你们可能有一些共享数据 检查正在使用
  • 如何编写一个同时需要请求和响应Dtos的ServiceStack插件

    我需要提供本地化数据服务 所有本地化的响应 Dto 都共享相同的属性 IE 我定义了一个接口 ILocalizedDto 来标记那些 Dto 在请求端 有一个ILocalizedRequest对于需要本地化的请求 Using IPlugin
  • 如何从main方法调用业务对象类?

    我已将代码分为业务对象 访问层 如下所示 void Main Business object public class ExpenseBO public void MakeExpense ExpensePayload payload var
  • (de)从 CSV 序列化为对象(或者最好是类型对象的列表)

    我是一名 C 程序员 试图学习 C 似乎有一些内置的对象序列化 但我在这里有点不知所措 我被要求将测试数据从 CSV 文件加载到对象集合中 CSV 比 xml 更受青睐 因为它更简单且更易于人类阅读 我们正在创建测试数据来运行单元测试 该集
  • gcc 的配置选项如何确定默认枚举大小(短或非短)?

    我尝试了一些 gcc 编译器来查看默认枚举大小是否很短 至少一个字节 强制使用 fshort enums 或无短 至少 4 个字节 强制使用 fno short enums user host echo Static assert 4 si
  • C++ 密码屏蔽

    我正在编写一个代码来接收密码输入 下面是我的代码 程序运行良好 但问题是除了数字和字母字符之外的其他键也被读取 例如删除 插入等 我知道如何避免它吗 特q string pw char c while c 13 Loop until Ent
  • memset 未填充数组

    u32 iterations 5 u32 ecx u32 malloc sizeof u32 iterations memset ecx 0xBAADF00D sizeof u32 iterations printf 8X n ecx 0
  • 如何将 Roslyn 语义模型返回的类型符号名称与 Mono.Cecil 返回的类型符号名称相匹配?

    我有以下代码 var paramDeclType m semanticModel GetTypeInfo paramDecl Type Type Where paramDeclType ToString returns System Col
  • 当另一个线程可能设置共享布尔标志(最多一次)时,是否可以读取共享布尔标志而不锁定它?

    我希望我的线程能够更优雅地关闭 因此我尝试实现一个简单的信号机制 我不认为我想要一个完全事件驱动的线程 所以我有一个工作人员有一种方法可以使用关键部分优雅地停止它Monitor 相当于C lock我相信 绘图线程 h class Drawi
  • 防止在工厂方法之外实例化对象

    假设我有一个带有工厂方法的类 class A public static A newA Some code logging return new A 是否可以使用 a 来阻止此类对象的实例化new 那么工厂方法是创建对象实例的唯一方法吗 当

随机推荐

  • TouchUpInside 事件后无法将 UIButton 保持在选定状态

    我需要一个 UIButton 来保持按下状态 基本上 如果按钮处于正常状态 我想触摸该按钮 它会突出显示其标准蓝色 然后在抬起手指后保持蓝色 我制作了以下 UIAction 并将按钮 Touch Up Inside 事件连接到它 IBAct
  • 为什么有人会创建额外的局部变量只是为了在其上添加最终关键字?

    我遇到过类似这样的代码 public void foo String param1 final String param1F param1 我怀疑作者不知道他可以将 Final 关键字直接放在方法签名中 因为在方法的其余部分中他只使用 pa
  • 初始化向量的特征

    我绝不是密码学专家 我一直在 Stack Overflow 和维基百科上阅读一些问题 但在定义 IV 及其用法方面没有什么是真正 明确的 我发现的几点 IV 被添加到明文消息中以加强加密 IV 是真正随机的 每条消息都有自己独特的 IV 有
  • 使用 Jersey 客户端在 POST 中发送名称值对

    我如何将名称值对作为正文传递给泽西岛的 POST ReST 服务 类似于下面使用 Apache Commons PostMethod 的代码 final PostMethod post new PostMethod url post set
  • 为什么正则表达式的运行时间可以呈指数级增长?

    可以编写在某些情况下需要指数运行时间的正则表达式 这样的例子是 aa aa 如果有奇数个输入a它需要指数级的运行时间 测试这个很容易 如果输入仅包含as 且长度为 51 正则表达式需要几秒钟的时间来计算 在我的机器上 相反 如果输入长度为
  • Rails activerecord:总和、最大值和连接

    我有两个型号users and posts 用户可以投票和查看帖子 users id name posts id count votes count views users id created at updated at 我想要的是过去
  • 向 Array 类添加新方法

    我对数组对象有一个新的要求 所以我需要将自己的方法添加到内置 Array 类中 如何添加新方法 以便无论我创建什么 Array 对象 它也将具有我的实例方法 Use 红宝石公开课 http rubylearning com satishta
  • 在 Windows 7 的 XAMPP 1.8.3 上运行 ImageMagick

    我已经尝试了几个小时让 ImageMagick 在我的本地主机上运行 在 Windows 7 上运行 XAMPP 1 8 3 我已经检查并尝试了在该网站上找到的所有解决方案以及其他数十个解决方案 什么都不起作用 无论我尝试哪种 ImageM
  • 安装 SubGit 存储库时跳过修订

    我在用着SubGit http subgit com 克隆 SVN 存储库 修订版本中的某个位置是某个标记的 副本 当 SubGit 加载每个修订版本时 需要很长时间才能获取这个特定标签 而该标签恰好是 的副本 这会阻止复制 我尝试设置mi
  • Jquery,隐藏和显示第n项之后的列表项

    假设我有一个无序列表 如下所示 ul li One li li Two li li Three li li Four li li Five li ul 我如何使用 JQuery 隐藏最后 2 个列表项并在那里有一个 显示更多 链接 这样当单
  • “运算符=必须是非静态成员”是什么意思?

    我正在创建一个双链表 并重载了运算符 以使列表等于另一个 template
  • 如何在 spring-security-javaconfig 中添加访问拒绝处理程序

    我正在使用 spring security javaconfig 库来实现 Spring Security 如果我使用 xml 配置文件 我会使用类似这样的内容来定义自定义 拒绝访问 页面
  • JavaFX 模态窗口对 Swing 的所有权

    我有一个基于 Swing 构建的应用程序 并与 JavaFX 集成 Swing 的 JFrame 是顶层窗口 JFXPanel 包含不同的 JavaFX 控件 现在 我还集成了 JavaFX 的新警报 API 目前在显示时设置警报的所有权时
  • 使用 zsh 对于大型 /.ssh/config 文件自动完成速度较慢

    我目前有一个 ssh config 文件 其中约有 7000 行 我想看看是否有办法加快 zsh 中的自动完成功能 当我开始输入我想要 ssh 进入的服务器然后按TAB它需要大约 10 秒的时间来向我显示我可以选择的可能的主机 问题是完成
  • 推荐的最低 Android 应用 SDK

    我正在制作一个 Android 应用程序 想知道业界对支持旧版 Android 版本 如 GingerBread 和 FroYo 的想法是什么 像我这样的开发人员是否应该采取额外的步骤来使我的应用程序与这些旧版本兼容 或者它们是否已过时 我
  • 如何从主窗口调用异步方法?

    所以我写了一个快速的async方法将一些数据放入DataTable来自 Oracle 数据库 我该怎么称呼这个MainWindow 不阻塞UI线程 这async wait模型在那里并没有多大意义 async Task
  • Facebook JavaScript SDK:FB.ui 打开一个弹出窗口

    我试图在 facebook iframe 应用程序中使用以下代码显示 发布到您的墙 提要对话框 div div
  • 增加 parallel.foreach 范围之外的计数值

    如何增加parallel foreach 循环范围之外的整数值 同步对并行循环之外的对象的访问的最简单方法是什么 var count 0 Parallel ForEach collection item gt action item inc
  • 在 Xcode 中查找方法引用

    Xcode 中有没有办法找到调用方法或属性的所有位置 例如 在 Eclipse 中 您可以右键单击一个方法并选择查找参考资料 Xcode中有类似的东西吗 选择您感兴趣的方法 或将文本光标置于其中 通过编辑器左上角的图标打开 相关文件 菜单
  • 使用链表压栈操作失败

    我正在尝试使用单个链表创建堆栈 我的推送操作不会将数据插入链表 这是我到目前为止所尝试过的 typedef struct element int data struct element next node 推送方法 void push no