アイデアは、10 個の文字列を含む配列を持つことです。
選択したオプションでメニューを動的に印刷しようとしています。ここで、文字列を配列から構造体にプルしようとしています...しかし、取得できません...文字列を構造体変数に直接割り当てると、それを読み取ることができます。
誰かがここで何がうまくいかないのか説明してください。
#include <stdio.h>
#include <stdlib.h>
typedef struct some_numbers{
int id;
char *somestring[10];
}numb;
int main()
{
int i = 0;
numb *new_numb;
char *arr[10]= {0};
for(i; i<2; i++)
{
printf("Please enter %dth name:\n",i);
scanf("%s",arr+i);
//i am printing it agian to confirm that it is stored in said locations
printf("%s\n",arr+i);
}
new_numb = (struct numb *)malloc(sizeof(numb)*4);
//If i assign the string dirctly then i can print it as follow
new_numb->somestring[0] = "MY_number";
printf("%s\n",new_numb->somestring[0]);
//I am trying to copy string from an arry and print it again....but not working
for(i=0; i<2; i++)
{
strcpy(new_numb->somestring[i], arr+i);
printf("%s\n",new_numb->somestring[i]);
}
system("PAUSE");
return 0;
}