有人可以解释如何在C编程中将元素附加到数组吗? [英] Can someone explain how to append an element to an array in C programming?

查看:85
本文介绍了有人可以解释如何在C编程中将元素附加到数组吗?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如果我想向初始化为int的数组添加数字,该怎么做?

  int arr [ 10] = {0,5,3,64}; 
arr [] + = 5; //这是它吗?对我不起作用...

我想要{0,5 ,3、64、5}。



我已经习惯了Python,在Python中有一个名为list.append的函数将一个元素附加到自动为您列出。

解决方案

  int arr [10] = {0, 5、3、64}; 
arr [4] = 5;

编辑:
所以我被要求解释发生了什么这样做时:

  int arr [10] = {0,5,3,64}; 

您创建一个包含10个元素的数组,并为该数组的前4个元素分配值。 / p>

还要记住, arr 从索引 arr [0] 并终止于索引 arr [9] -10个元素

  arr [0]的值为0; 
arr [1]的值为5;
arr [2]的值为3;
arr [3]的值为64;

之后,该数组包含垃圾值/零,因为您没有分配任何其他值



但是您仍然可以分配另外6个值,所以当您这样做

  arr [ 4] = 5; 

您将值5分配给数组的第五个元素。



您可以这样做,直到为 arr 的最后一个索引分配值,即 arr [9] ;



很抱歉,如果我的解释不连贯,但我从来都不擅长解释事物。


If I want to append a number to an array initialized to int, how can I do that?

int arr[10] = {0, 5, 3, 64};
arr[] += 5; //Is this it?, it's not working for me...

I want {0,5, 3, 64, 5} in the end.

I'm used to Python, and in Python there is a function called list.append that appends an element to the list automatically for you. Does such function exist in C?

解决方案

int arr[10] = {0, 5, 3, 64};
arr[4] = 5;

EDIT: So I was asked to explain what's happening when you do:

int arr[10] = {0, 5, 3, 64};

you create an array with 10 elements and you allocate values for the first 4 elements of the array.

Also keep in mind that arr starts at index arr[0] and ends at index arr[9] - 10 elements

arr[0] has value 0;
arr[1] has value 5;
arr[2] has value 3;
arr[3] has value 64;

after that the array contains garbage values / zeroes because you didn't allocated any other values

But you could still allocate 6 more values so when you do

arr[4] = 5;

you allocate the value 5 to the fifth element of the array.

You could do this until you allocate values for the last index of the arr that is arr[9];

Sorry if my explanation is choppy, but I have never been good at explaining things.

这篇关于有人可以解释如何在C编程中将元素附加到数组吗?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆