【发布时间】:2014-06-28 15:27:06
【问题描述】:
这个问题很难命名。
基本上我有一个具有自己结构的数组。
typedef struct Video
{
unsigned id;
char title[90];
char producer[60];
}Video;
Video arrayVideo[7];
int main()
{
scanf("%s", arrayVideo[0].title);
printf("%s", arrayVideo[0].title);
}
此代码将打印出我在 scanf 过程中编写的任何内容。
然而,这个对 int main 的小改动;
int main()
{
arrayVideo[0].title[90] = ("Hello");
printf("%s", arrayVideo[0].title);
}
什么都没有。控制台只是输出执行时间和正常业务。不输出“你好”
【问题讨论】:
-
你需要使用strcpy()来复制数组。
-
您是否收到有关该代码的编译警告?您正在尝试将一个字符串常量(一个指针)分配给一个字符,并在数组的末尾分配一个。
-
arrayVideo[0].title[90]的类型是char并且在数组的最后一个元素旁边。