C 使用结构指针和数组为以下函数编写代码
我是C编程新手。有谁能告诉我如何用粗体字对术语进行编码C 使用结构指针和数组为以下函数编写代码,c,arrays,pointers,struct,malloc,C,Arrays,Pointers,Struct,Malloc,我是C编程新手。有谁能告诉我如何用粗体字对术语进行编码 创建一个名为arrayData的结构,该结构包含一个名为array的整数指针和一个名为size的整数变量 创建具有以下标题的函数:arrayData*createArray(int size)。在该函数中,您将为新的arrayData结构分配malloc空间然后需要使用输入变量作为元素数创建一个数组。最后,您需要将malloc'ed arrayData指针中的变量设置为数组和数组大小。最后返回malloc'ed arrayData结构的指
- 创建一个名为arrayData的结构,该结构包含一个名为array的整数指针和一个名为size的整数变量
- 创建具有以下标题的函数:arrayData*createArray(int size)。在该函数中,您将为新的arrayData结构分配malloc空间然后需要使用输入变量作为元素数创建一个数组。最后,您需要将malloc'ed arrayData指针中的变量设置为数组和数组大小。最后返回malloc'ed arrayData结构的指针
#include<stdio.h>
struct arrayData
{
int *array;
int size;
}
struct arrayData* createArray(int size)
{
struct arrayData *str = (struct arrayData*)malloc(sizeof(struct arrayData));
int a = 10;
int arr[a];
for ( a = 0; a < 10; a++ )
{
str->arr[i] = a;
}
return str;
}
#包括
结构arrayData
{
int*数组;
整数大小;
}
结构arrayData*createArray(整数大小)
{
struct arrayData*str=(struct arrayData*)malloc(sizeof(struct arrayData));
INTA=10;
int-arr[a];
对于(a=0;a<10;a++)
{
str->arr[i]=a;
}
返回str;
}
只需对分配大小和数组进行一些更改
struct arrayData* createArray(int size)
{
struct arrayData *str = (struct arrayData*)malloc(sizeof(struct arrayData));
int a = 10;
//int arr[size]; // array should be of size provided
int *arr = (int*)malloc(size * sizeof(int));
str->size = size; // you should assign size to structure variable
for ( a = 0; a < 10; a++ )
{
arr[i] = a;
}
str->array = arr; // you should point the array in structure to the
// integer arr which you created
return str;
}
struct arrayData*createArray(整数大小)
{
struct arrayData*str=(struct arrayData*)malloc(sizeof(struct arrayData));
INTA=10;
//int arr[size];//应提供数组大小
int*arr=(int*)malloc(size*sizeof(int));
str->size=size;//应该为结构变量指定大小
对于(a=0;a<10;a++)
{
arr[i]=a;
}
str->array=arr;//您应该将结构中的数组指向
//您创建的整数arr
返回str;
}
int-arr[a]代码>在函数内部本地分配,并在函数返回时销毁。您应该动态分配str->array
,以获得正确的分配
struct arrayData* createArray(int size)
{
struct arrayData *str = malloc(sizeof(struct arrayData));
int a = 10;
str->array = malloc(size * sizeof(int));
str->size = size;
for ( a = 0; a < 10; a++ )
{
str->array[i] = a;
}
return str;
}
struct arrayData*createArray(整数大小)
{
struct arrayData*str=malloc(sizeof(struct arrayData));
INTA=10;
str->array=malloc(size*sizeof(int));
str->size=size;
对于(a=0;a<10;a++)
{
str->array[i]=a;
}
返回str;
}
int-arr[size]
在本地分配,一旦函数返回将被销毁;但是如果我想创建一个具有以下标题的函数:void setArray(arrayData*data)。在此函数中,将输入变量数组中的所有值设置为0到50之间的随机数。创建一个具有以下标题的函数:void printary(arrayData*data)。此函数将输出输入变量数组中的所有值。我该怎么做?@RipalNaik-对于这个新问题,请单独创建一个线程/页面。老实说,你甚至没有尝试编译它arrayData
没有成员arr
。