让我们考虑一个数组(例如,int a[25];
)。
后来在一些循环的帮助下,我开始将用户输入存储在这个数组中。
在某个时间点,如果用户选择删除他刚刚从数组中输入的值。
我怎样才能为我的程序的用户做到这一点。
我可以把它设为0,但0也是他可以输入的值;所以我只想将其设置为 NULL 或使用一些垃圾值,就像我初始化数组时一样。
最佳答案
您无法从数组中删除元素。在 C 语言中,数组存储为连续的内存块,因此不能只删除一个元素。您可以使用以下任一选项:
- 使用一些未使用的值(例如
-1
)将元素标记为已删除。 - 使用单独的数组来跟踪已删除的元素。
- 使用链表存储元素(推荐选项)。
关于C编程: Delete specific value stored in Array,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24545311/