结构体指针数组

2024-04-10

我试图了解我的代码是否正确。我需要声明一个指向结构的指针数组,创建一个新结构并分配值并打印它们。在我看来,我没有正确声明指针数组。我需要知道我做错了什么。谢谢 我收到此编译错误:错误:'people' 未声明(首次在此函数中使用) 我尝试插入 struct data *list;进入 main 但它不起作用

     char *book[] = { "x", "y", "z",};
     int number[] = { 1, 2, 3};

     struct data = { char *bookname; int booknumber;};

     function(char *x, int y)
     {
       static int count;

       struct data *list[3];

       //creating a new struct 
       list[count] = (struct data*) malloc( sizeof(struct data) );

       //assigning arguments
       list->bookname = x;
       list->booknumber = y;

       count++;
     }

     int main()
     {
       struct data *list[3];

       int i;
       for(i = 0; i < 3; i++)
       {
         function(book[i], number[i]);

         printf("name: %c number: %d", list[i]->bookname, list[i]->booknumber);
       }

既然你想要数组,你需要declare arrays:

char *book[] = { "x", "y", "z",};
int number[] = { 1, 2, 3};

另一个问题是

list = (struct data*) malloc( sizeof(struct data) );

//assigning arguments
list[count]->bookname = ...

Here, list总是只有一个元素。因此,如果count除了0,您将访问数组越界!

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

结构体指针数组 的相关文章

  • 如何在C++中生成非常大的随机数

    我想使用 C 生成 0 2 64 范围内的非常大的随机数 我已经使用了 rand 函数 但它没有生成非常大的数字 有人可以帮忙吗 使用c 11 使用标准c 11的随机库 http en cppreference com w cpp nume
  • Visual Studios 2015 中的“恢复 NuGet 包”没有执行任何操作

    我将解决方案从 SVN 拉入 Visual Studios 2015 代码中的一些 使用 引用出现错误 因此我尝试在右键单击 解决方案 中的解决方案时运行 恢复 NuGet 包 选项探索者 这没有任何作用 我必须手动进入 nuget 管理器
  • 无法使用c#更改视频捕获分辨率

    我正在尝试使用 C 中的 DirectShowNet 更改默认网络摄像头分辨率 据我所知 我需要通过调用 windows win32 api dll 中内置的 VideoInfoHeader 类来更改它以进行 avi 捕获 我有来自 Dir
  • 如何通过覆盖 MSBuild 目标来防止外语资源生成?

    我正在致力于减少大型 C ASP NET 解决方案的编译时间 我们的解决方案使用通常的 resx 文件方法翻译成大约十几种外语 这些资源文件的解析和编译极大地减慢了我们的编译时间 并且是日常的挫败感 我知道可以创建自定义资源提供程序并摆脱
  • C# 异步任务比同步慢

    你知道为什么同步斐波那契方法比异步 等待更快并且比异步任务更快吗 我在每个项目方法上都使用了异步 所以主要是这是一个非常糟糕的方法 Code static int FibonacciSync int number if number 0 r
  • 如何通过 libwebsocket 发送异步数据?

    我正在将 Warmcat 的 libwebsocket C 库用于小型 Websocket 服务器 我已经启动并运行了这些示例 并且可以发送数据以响应从 websocket 接收数据 例如回显发送的反向字节 但是 我无法弄清楚如何在不使用
  • 无法将参数从 `const char *` 转换为 `char *`

    鉴于此代码 void group build int size std string ips Build the LL after receiving the member list from bootstrap head new memb
  • 选择initializer_list迭代器定义

    Why std initializer list
  • QSpinBox 输入 NaN 作为有效值

    我正在尝试扩展 QSpinBox 以能够输入 NaN 或 nan 作为有效值 根据文档 我应该使用 textFromValue valueFromText 和 validate 函数来完成此操作 但我无法让它工作 因为它仍然不允许我输入除数
  • ASP.net WebForms - 在标记中使用 GetRouteUrl

    我一直在尝试弄清楚如何将路由功能与 ASP net 4 0 WebForms 一起使用 我将一条路线添加到我的路线集合中 void Application Start RegisterRoutes RouteTable Routes voi
  • 使用 OleDbCommand / OleDbDataAdapter 读取 CSV 文件

    我不明白为什么 但是当我使用 OleDbDataAdapter 或 OleDbCommand 读取 CSV 文件时 在这两种情况下 生成的数据结构良好 它识别文件头中的列 但行数据都是空字符串 我之前已经成功进行过多次 CSV 处理 因此我
  • 使用 dateTimePicker 在 DataGridView 中编辑日期

    我有一个DateTime我的 WinForms 中的专栏DataGridView 目前只能通过手动输入日期来编辑该字段 例如 2010 09 02 需要什么才能拥有一个DateTimePicker 或同等 用作编辑器 DataGridVie
  • 意外的 const 引用行为

    include
  • 在特定线程上运行工作

    我想要一个特定的线程 任务队列并在该单独的线程中处理任务 应用程序将根据用户的使用情况创建任务并将其排队到任务队列中 然后单独的线程处理任务 即使队列为空 保持线程活动并使用它来处理排队任务也至关重要 我尝试过几种实现TaskSchedul
  • 实体框架读取列但阻止其更新

    给定一个数据库表 其中有一列包含历史数据但不再填充 实体框架中是否有一种方法可以读取该列 但在使用相同的模型对象时防止它被更新 例如我有一个对象 public class MyObject public string CurrentData
  • 如何重用具有稍微不同的 ProcessStartInfo 实例的 Process 实例?

    我有以下开始的代码robocopy https technet microsoft com en us library cc733145 aspx as a Process 我还需要进行数据库查询以确定每次需要复制哪些目录robocopy被
  • 使用任务的经典永无止境的线程循环?

    给出了一个非常常见的线程场景 宣言 private Thread thread private bool isRunning false Start thread new Thread gt NeverEndingProc thread S
  • C# PasswordDeriveBytes:似乎 Salt 并不重要

    可能我误解了什么 以下代码通过 CryptDeriveKey 使用两种不同的盐生成两个相等的密钥 这是控制台结果 盐1 21 3e 18 a3 9a 8b 5f gt 键 da 89 ea 3d 91 08 20 98 20 e9 dc 4
  • 如何通过API退出Win32应用程序?

    我有一个使用 Win32 API 编写的 C Win32 应用程序 我希望强制它在其中一个函数中退出 有没有类似的东西Exit or Destroy or Abort 类似的东西会终止它吗 哎呀呀呀呀呀呀 不要做任何这些事情 exit 和
  • 创建进程默认浏览器

    我目前正在使用 ShellExecute 打开 在用户浏览器中打开 URL 但在 Win7 和 Vista 中遇到了一些麻烦 因为该程序作为服务运行提升 我想获取线程 id 因此 ShellExecute 无法获取线程 id 因此我开始使用

随机推荐

  • 浏览图像文件并将其显示在 kivy 窗口中

    我是 Kivy 的初学者 尝试使用 kivy fileChooser 浏览图像文件 然后将其显示在窗口上 下面你找到了我的代码 但它无法完成任务 它只是在控制台上显示 PNG 请和我一起检查一下 import kivy from kivy
  • 类型错误:MiniCssExtractPlugin 不是构造函数

    webpack cli TypeError MiniCssExtractPlugin is not a constructor at module exports home andrey smartadmin app webpack con
  • react-native-video [android] undefined 不是一个对象(评估 NativeModuels.UIManager.RCTVideo.Constants')

    我将 React Native 集成到现有的 Android 应用程序中 我尝试使用 React Native Video 组件在应用程序上显示视频 反应本机 0 42 0 反应本机视频 1 0 0 我按照这里的说明进行操作 https g
  • 来自 Google/Bing 的具有自动完成功能的自定义框。有没有办法读取接收到的json文件?

    我尝试构建一个带有搜索框的网页 我想从 Bing 获取自动完成选项 例如 可以通过以下方式从 bing 获取自动完成功能 http api bing com osjson aspx query YOUR QUERY http api bin
  • Perl system() 调用会终止吗?

    Can a system 打电话可以永远die在 Perl 5 中 换句话说 为了 100 防崩溃 执行以下操作的程序system call 是否需要将其包装成eval block 或者这是完全没有必要的 我在 中没有发现任何提及这种可能性
  • c++;编译期间警告“默认启用”是什么意思?

    我的代码编译没有错误 但这意味着什么 etherate cpp 432 11 warning deleting array unsigned char broadMAC 6 enabled by default 从这一行开始 我删除了一个
  • 如何从 Facelets 和 web.xml 引用 JAR 中的 Facelets taglib?

    我正在使用 Apache MyFaces Commons验证器 http myfaces apache org commons20 myfaces validators20 tagdoc html TagLib 我应该如何将其添加到我的 w
  • 成员函数什么时候应该同时是 const 和 volatile ?

    我正在阅读有关易失性成员函数的内容 并发现成员函数可以同时是const 和 volatile 在一起 我没有得到这样的东西的真正用途 任何人都可以分享他们的经验吗实际使用将成员函数同时用作 const 和 volatile 我编写了小类来测
  • Amazon S3 - HTTPS/SSL - 可能吗? [关闭]

    Closed 这个问题是无关 help closed questions 目前不接受答案 我看到了一些与此相关的其他问题 但没有任何真正的答案或信息 或者看起来如此 我这里有一张图片 http furniture retailcatalog
  • Django - 当文件等于 maxBytes 时旋转文件处理程序卡住

    我在使用 Django 时遇到 RotatingFileHander 问题 问题是 当文件达到 maxBytes 大小时 它不会创建新文件 并在您尝试执行 logger info any message 时给出错误消息 奇怪的部分是 没有人
  • 我们有 php 应用程序服务器(不是 Web 服务器)吗?

    对于 Java 我们有不同的应用程序服务器 例如 WebSphere 和 Web 逻辑 我的疑问是我们有 PHP 应用程序服务器吗 到目前为止 我们正在使用 Apache 和 Nginx Web 服务器来运行 PHP Web 应用程序 应用
  • 在 R Markdown 中使用环境中的数据[重复]

    这个问题在这里已经有答案了 我正在尝试使用来自全球环境的数据R Markdown 当我打电话给 summary mydata 它给了我这个错误 未找到对象 mydata 我的所有作品都包含在许多不同的脚本中 因此对我来说创建一个 R每个结果
  • Backbone - 对 id 使用不同的字段名称

    我正在移植一个旧应用程序以使用backbone js 希望如此 问题是系统中的各种对象都没有使用 id 作为 id 每个对象都是不同的 通过阅读 我在初始化 Backbone Model 时提出了以下解决方案 initialize func
  • 材质按钮上的圆角

    我正在遵循以下问题的提示this https stackoverflow com questions 26346727 android material design button styles创建一个像 Material Design 中
  • JavaScript 私有方法

    要使用公共方法创建 JavaScript 类 我会执行以下操作 function Restaurant Restaurant prototype buy food function something here Restaurant pro
  • 为什么scala人不喜欢注释?

    NET 中的属性是一个非常流行的功能 而Java在1 5之后添加了Annotation 注解随处可见 请参阅 Java EE 和 Spring 但很少有scala库使用注释 lift json 不要使用它 lift record 不要使用它
  • Python3:没有 gzip 或 zlib?

    该模块现在有其他名称吗 我似乎找不到任何信息表明该模块已被弃用或完全删除 这会让我更加困惑 有谁知道这去哪儿了 Python 3 1 2 r312 79147 May 20 2010 09 09 30 GCC 4 1 2 20080704
  • Ruby on Rails 最佳托管(截至 2012 年)[已关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 使用 FileHelpers 动态创建 CSV 文件

    FileHelpers 支持一项名为 运行时记录 的功能 当您直到运行时才知道布局时 该功能可让您将 CSV 文件读入数据表中 是否可以使用 FileHelpers 以相同的方式在运行时创建 CSV 文件 根据某些用户输入 必须创建的 CS
  • 结构体指针数组

    我试图了解我的代码是否正确 我需要声明一个指向结构的指针数组 创建一个新结构并分配值并打印它们 在我看来 我没有正确声明指针数组 我需要知道我做错了什么 谢谢 我收到此编译错误 错误 people 未声明 首次在此函数中使用 我尝试插入 s