在C中:如何在函数中传递数据类型结构的数组



如何将类型结构为task的名为arrayt的整个数组传递给名为create_task的函数?

我们需要定义arrayt的数据类型,同时将其传递给函数。它的数据类型是什么?任务、结构任务还是结构?

#include<stdio.h>
#include <string.h>
// problem: HOW TO PASS AN ARRAY IN A FUNCTION OF TYPE STRUCT
void create_task(struct task arrayt );
struct task{
char t_name[99];
char task_noted[999];
};
int main()
{
struct task arrayt[999];
int check=0;
while(check>3||check<1){
printf("Enter 1 to create a tasknEnter 2 to delete a tasknEnter 3 to view task:n");
scanf("%d",&check);
}
switch(check){
case 1:
printf("CREATING A TASKn");
create_task(arrayt);
break;
case 2:
printf("DELETE TASK");
break;
case 3:
printf("VEIW TASKS");
break;
default :
printf("INVALID OPTION!!!!");
break;
}
}
void create_task(struct task arrayt ){
char name ;
printf("Enter Task Name: ");
scanf(" %s ",&name);
FILE *ptr;
ptr = fopen("data.txt","a");

fclose(ptr);
}
#include<stdio.h>
#include <string.h>
struct task{
char t_name[99];
char task_noted[999];
};
void create_task(struct task arrayt[] ); // Function prototype after structure declaration    
int main(){
struct task arrayt[999];
int check=0;
while(check>3||check<1){
printf("Enter 1 to create a tasknEnter 2 to delete a tasknEnter 3 to veiw task:n");
scanf("%d",&check);
}
switch(check){
case 1:
printf("CREATING A TASKn");
create_task(arrayt);
break;
case 2:
printf("DELETE TASK");
break;
case 3:
printf("VEIW TASKS");
break;
default :
printf("INVALID OPTION!!!!");
break;
}
}
void create_task(struct task arrayt[] ){
char name[50]; // defined an array
printf("Enter Task Name: ");
scanf(" %s",name);  // No need of &
// Do whaterever required here.
}

最新更新