C 向量/数组列表/链接列表

2024-03-27

我正在用 C 语言编写一个小程序,我需要一种向量/ArrayList/LinkedList,但我正在使用 C 语言。知道如何在 C 语言中做这种事情吗?

我想存储结构,然后添加/删除一些结构。


对于可调整大小的数组,您可以使用malloc() and realloc()。这些允许您预订(通过malloc())并调整大小(与realloc())堆上一定量的空间。它们的使用方式如下:

int* a = malloc(10 * sizeof(int));

if(a == NULL) {}     // malloc() was unable to allocate the memory, handle the
                     // error and DO NOT use this pointer anymore

// now you can treat a as a normal array of 10 ints:
a[4] = 51;

// suppose 10 ints aren't no more enough:
a = realloc(a, 20 * sizeof(int));

if(a == NULL) {}     // same thing as before

// here you have 20 ints, the previous 10 are still there
a[18] = a[4]

// don't forget to free the memory when you have finished:
free(a);

只需将“int”替换为您的结构类型即可。 ;)

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

C 向量/数组列表/链接列表 的相关文章

  • 如何将这段 javascript 代码重写为 C++11?

    这是我在 Javascript Definitive Guide 中看到的 javascript 闭包代码 我想把它写成C 11 var uniqueID1 function var id 0 return function return
  • 如何在 ASP.NET MVC 中将 XML 文件发送到客户端

    在 ASP NET MVC 中 我有一个数据库表 我想在某个视图页面上有一个按钮 如果某个用户单击该按钮 我的应用程序将生成包含数据库中所有行的 XML 文件 然后 应将包含 XML 的文件发送到客户端 以便用户看到下载弹出窗口 同样 我希
  • 如何通过覆盖 MSBuild 目标来防止外语资源生成?

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

    你知道为什么同步斐波那契方法比异步 等待更快并且比异步任务更快吗 我在每个项目方法上都使用了异步 所以主要是这是一个非常糟糕的方法 Code static int FibonacciSync int number if number 0 r
  • 头文件中实现的函数的静态与内联

    我想到的方式inline在 C 中用于链接 作用域 我把它放在同一个篮子里extern and static对于全局对象 通常 对于在头文件中实现的函数 我的首选解决方案是将其设为静态 In Foo h static void foo Do
  • C# 中类似图的实现

    所以我有一个对象 我们称之为 Head 它有一个对象列表 C C1 C2 C3 T T1 T2 和 M M1 M2 并且所有这些都是相互关联的 例如 Head gt C1 C2 C3 T1 T2 M1 M2 T1 gt C1 C2 T2 g
  • C++ 指针和对象实例化

    这有效 MyObject o o new MyObject 而这并不 MyObject o new MyObject Why 关键词new 返回一个指针 http msdn microsoft com en us library kewsb
  • 在 .NET Core 中从 HttpResponseMessage 转换为 IActionResult

    我正在将之前在 NET Framework 中编写的一些代码移植到 NET Core 我有这样的事情 HttpResponseMessage result await client SendAync request if result St
  • 如何在 Visual Basic DLL 和 C++ DLL 之间创建隔离/免注册 COM?

    我必须在 C DLL 中使用 VB COM DLL 我弄清楚了如何从 C DLL 访问 VB COM DLL 并且它可以工作 现在我遇到了一个问题 我必须使用隔离的 COM 免注册 COM 因为我无法在必须使用它的每台 PC 上注册 DLL
  • 为什么 BinaryFormatter 可以序列化 Action<> 但 Json.net 不能

    尝试序列化 反序列化 Action 尝试我的 1天真 JsonConvert SerializeObject myAction JsonConvert Deserialize
  • 原子存储抛出错误

    我最近升级到了 C 11 兼容编译器 并且尝试将一些代码从 boost 更新到 c 11 标准 我在使用atomic store转换一些代码时遇到了问题 这是一些简单的测试代码 似乎会引发编译器错误 int main std shared
  • ASP.net WebForms - 在标记中使用 GetRouteUrl

    我一直在尝试弄清楚如何将路由功能与 ASP net 4 0 WebForms 一起使用 我将一条路线添加到我的路线集合中 void Application Start RegisterRoutes RouteTable Routes voi
  • linq where 子句和 count 导致 null 异常

    除非 p School SchoolName 结果为 null 否则下面的代码将起作用 在这种情况下 它会导致 NullReferenceException if ExistingUsers Where p gt p StudentID i
  • Windows 上本机 C++ 应用程序中的自动死代码检测?

    背景 我有一个用原生 C 编写的应用程序 花了几年的时间 大约有 60 KLOC 有很多函数和类已经死了 可能有 10 15 就像下面提出的类似的基于 Unix 的问题 我们最近开始对所有新代码进行单元测试 并尽可能将其应用于修改后的代码
  • 使用 dateTimePicker 在 DataGridView 中编辑日期

    我有一个DateTime我的 WinForms 中的专栏DataGridView 目前只能通过手动输入日期来编辑该字段 例如 2010 09 02 需要什么才能拥有一个DateTimePicker 或同等 用作编辑器 DataGridVie
  • 在 C# 命令行应用程序中包含并执行 EXE

    所以我找到了一个很棒的小 EXE 命令行应用程序 我们将其称为 program exe 它输出一些我想用 C 操作的数据 我想知道是否有一种方法可以将program exe 打包 到我的Visual Studio项目文件中 这样我就可以将编
  • 如何在控制台程序中获取鼠标位置?

    如何在 Windows 控制台程序中用 C 获取鼠标单击位置 点击时返回鼠标位置的变量 我想用简单的文本命令绘制一个菜单 这样当有人点击时 游戏就会注册它并知道位置 我知道如何做我需要做的一切 除了单击时获取鼠标位置 您需要使用 Conso
  • Unity - 在生成时获取随机颜色

    我有一个小问题 我想在我的场景中生成四边形 它们都应该有红色或绿色作为材质 但 Random Range 函数只能是 int 我该如何解决它 void SpawningSquadsRnd rndColor 0 Color red rndCo
  • 强制函数调用的顺序?

    假设我有一个抽象基类 并且我想要一个必须由派生类实现的纯虚方法 但我想确保派生方法以特定顺序调用函数 我可以做什么来强制执行它 I E base class virtual void doABC 0 virtual void A 0 vir
  • Asp.Net Core 中的 SSL 不起作用

    我从 Visual Studio 创建了一个简单的 Web 应用程序Web Application Net Core 具有个人用户帐户授权的模板 然后 我启用了 SSLProject gt MyProject Properties 将带有

随机推荐

  • 如何使用 vagrant 定义网络设置

    我在 vagrant 中运行 Ubuntu 这是 Vagrantfile Vagrantfile API syntax version Don t touch unless you know what you re doing VAGRAN
  • 如何将带有值的命令行参数传递给 Inno Setup 编译器,以便我可以在代码中使用它们?

    我有两种可能的构建选项 由于我不希望我的客户使用某些参数启动安装程序 因此我最好将它们传递给编译器并在我的代码中完成所有工作 假设我有变量UNION它可能有两个值 0 and 1 我必须在代码中分析该变量的值 并根据结果包含或不包含某些文件
  • Hibernate与oracle dblink的实现

    刚接触hibernate 有没有办法在hibernate上实现oracle dblink 例如select from tablename dblink在hql中使用 在 Oracle 中为 tablename dblink 创建 SYNON
  • phantomjs 支持 Bayeux 或 WebSockets 吗?

    只是简单的问题 因为我在文档中没有找到任何参考资料 只是一个简单的答案 PhantomJS 1 x 不支持 但 PhantomJS 2 确实支持 websockets PhantomJS 2 0 0 的 Modernizr 输出
  • 如果行数超过 15,则向表中插入与打开行数相等的行数

    My table id sum type 1 3 1 1 6 1 1 6 2 1 3 1 1 3 1 1 6 1 These 1 3 1 是空行 类型始终为 1 总和可以不同 These 1 6 2 是封闭的行 输入 1 sum 空行的总和
  • option.style.display =“none”在 safari 中不起作用[重复]

    这个问题在这里已经有答案了 这是我正在研究的示例 http jsfiddle net 4suwY 5 http jsfiddle net 4suwY 5 HTML
  • 如何从文本文件中只读取一项内容?

    我可以从文件中读入 并且可以通过更改 for 循环中的数字来更改给出的行数 但我不希望文件中的所有数字像这样并排显示 我需要它们全部随机地一一下降 public class Assignment2 public static void ma
  • Python Sklearn.Model_Selection 给出错误,无法导入梳

    我将 train test split 导入为 from sklearn model selection import train test split 并给出错误无法导入名称 comb 我使用的版本是 scipy 0 18 1 和 skl
  • Botconnector 不适用于自签名的 Nodejs 机器人

    我创建了一个简单的机器人 自签名 ssl 证书 显然这不适用于机器人连接器 几秒钟后 我从机器人收到以下错误 error code BadCertificate message An error occurred while sending
  • 获取用户 keycloak Not Found 异常

    我无法像示例中那样获得用户组 样品来自 看看我们的测试套件 例如 UserTest https github com keycloak keycloak blob 2 5 0 Final testsuite integration arqu
  • Winforms 中是否可以从 ListView 拖放到 TreeView?

    如果不可能的话 我还可以使用 2 个 TreeView 控件 我只是不会在第二个 TreeView 控件中具有层次结构 它就像某种存储库 任何代码示例或教程都会非常有帮助 ListView自然不支持拖放 但您可以使用少量代码启用它 http
  • 如何在cordova应用程序中创建两个离子模式?

    您好 在我的应用程序中 我已经有一个用于登录的离子模式 ionicModal fromTemplateUrl templates login html scope scope then function modal scope modal
  • 如何隔离Spring Boot应用程序Redis和Spring Boot会话全局Redis

    据我所知 spring boot和spring session为我们提供了一站式自动配置 但是当我的应用程序使用会话redis和应用程序缓存redis时 不是同一个redis服务器 我该如何配置呢 非常感谢您的回复 事实上 默认情况下 sp
  • OpenGL资源共享策略

    我正在创建一个类似 CAD 的应用程序 基于 Qt 它将是一个多文档界面 每个文档将包含大约 5 个视口 源自 QGLWidget 因此 我需要在整个应用程序中共享平面着色器 然后在每个文档 即 5 个视口 之间共享 3D 资源 存储为 V
  • 在两台显示器上最大化 WPF 窗口

    就像标题一样 我希望我的 WPF 在 2 个显示器上最大化 现在我的电脑有 2 个显示器 我设置 this Width System Windows Forms Screen AllScreens 0 Bounds Width System
  • PhoneGap Android 中的 pdf 查看器

    我正在寻找使用 Phonegap 2 0 的 Android pdf 查看器 我尝试了 childbrowser 插件 它可以在 iOS 上运行 但不能在 Android 上运行 我试过这个http www giovesoft com 20
  • Symfony 2 - 删除表单和 CSRF 令牌

    我有一个来自数据库的条目列表 我希望在每一行的末尾都有一个 删除按钮 这样用户就不必先转到编辑 显示页面来删除条目 我尝试使用 csrf 令牌创建一个隐藏的输入字段 如下所示 return this gt createFormBuilder
  • 如何仅获取 Rails 路由中的查询字符串?

    我正在使用这样的路线 match v1 method gt v1 index 我的目的是捕获 api 方法的名称 然后将请求发送到控制器内的该方法 def index self send params method params end 我
  • Java递归问题

    我在Java中遇到了一个递归面试问题 需要你的帮助 Write a Java function 这样 给定一个 int 数组 是否可以将 int 分为两组 使两组之和相同 并具有以下约束 所有 5 的倍数的值必须在一组中 并且所有是 3 的
  • C 向量/数组列表/链接列表

    我正在用 C 语言编写一个小程序 我需要一种向量 ArrayList LinkedList 但我正在使用 C 语言 知道如何在 C 语言中做这种事情吗 我想存储结构 然后添加 删除一些结构 对于可调整大小的数组 您可以使用malloc an