我想创建一个编辑函数,该函数通过引用歌曲的向量作为参数来接收。 (使用指针)
用户必须选择歌曲编号,然后重新输入矢量在该位置的数据。
我创建了结构,我已经在接收值并且正在玩。但是我不知道如何编辑。有人帮我开始这部分吗?
#include <stdio.h>
#include <stdlib.h>
#include <stdbool.h>
#include <locale.h>
#include <string.h>
struct registry_of_music {
char name[50];
char artist[60];
char url[80];
};
struct registry_of_music music[9];
int main() {
int i;
printf("\nRegistry of Music\n\n\n");
for(i = 0; i <= 3;i++ ){
printf("Name of Music: ");
fflush(stdin);
fgets(music[i].name, 50, stdin);
printf("Name of Artist: ");
fflush(stdin);
fgets(music[i].artist, 60, stdin);
printf("URL of Internet: ");
fflush(stdin);
fgets(music[i].url, 80, stdin);
}
int op;
do
{
printf("1 - Play\n");
printf("2 - Edit\n");
printf("3 - Exit\n");
printf("Please enter a value:");
scanf("%d", &op);
switch(op) {
case 1: play();
break;
case 2: edit();
break;
case 3: printf("Bye\n");
break;
default: printf("Try Again\n");
}
} while (op!=3);
getch();
return(0);
}
void play(){
int i;
for(i = 0; i <= 3;i++ ){
printf("Name ...........: %s", music[i].name);
printf("Artist .....: %s", music[i].artist);
printf("URL .....: %s", music[i].url);
}
}
void edit(){}
答案 0 :(得分:-1)
如果对未初始化的结构执行或已初始化,则“结构的填充实例”操作绝对相同。即使实例未初始化,它的字段中也有一些垃圾值。
另一方面,除非您使用更复杂的方法(并且未包含在ISO中),否则无法指定默认值,该默认值将显示在fgets
的提示符下并可用于键盘编辑。 C标准)工具。