#include<stdio.h>
#include<string.h>
#include<conio.h>
#include<Windows.h>

#define SIZE 100

typedef struct
{

 char name[10];
 char number[10];
 char adr[20];
 

}list;


void add(list *p,int *num);


 


int main(void)
{

  list list[SIZE];
  int menu;
  int usernum;

 while(1)
 {
        printf("=============================\n");
     printf("===========전화번호부=========\n");
     printf("=============================\n");
   printf("=============================\n");

   printf("==메뉴==\n");
   printf("=1.추가\n");
   printf("=2.삭제\n");
   printf("=3.수정\n");
    printf("=4.검색\n");
   printf("=5.전체출력\n");
   printf("=6.저장\n");
   printf("=7.읽어오기\n");
   printf("=8.종료\n");
   printf("=메뉴를 선택하세요 ");
   scanf("%d",&menu);

 if(menu==1)
 {
  add(list,&usernum);
 }
 else if(menu==2)
 {
 }
 else if(menu==3)
 {
 }
 else if(menu==4)
 {
 }
 else if(menu==5)
 {
 }

 
 }

}

 


void add(list *p,int *num)
{
   if(*num<SIZE)
   {
   printf("이름 : ");
   scanf("%s",p[*num].name);   
   printf("전화번호 :");
   scanf("%s",p[*num].number);
   printf("주소 :");
   scanf("%s",p[*num].adr);
   (*num)++;
   }
   else
   {
    printf("최대 저장수는 100까지입니다\n");
   }
}

 

이거다른사람이만든거 보고있는건데 전화번호부에서 전화번호추가하는파트임 .

근데 add함수부분에서   scanf("%s",p[*num].name);    요부분이 p는 매개변수 *p가 지금리스트를가르키고있으니까 list에입력받는다는거같은데 p[*num] 에 [*num]의 역할이뭐임??

그냥인트형 포인트변수 *num을 선언해놓은거같은데 저걸 scanf에서 받아주면 무슨역할을하는거에여