我有一个pointer..I一个struture我只是游荡我怎么能打印带有指针的结构的价值,所以我写了这样的代码打印结构的元素与符号箭头在C
#include <stdio.h>
#include <string.h>
typedef struct Books
{
char title[0];
} Book,*andi;
int main()
{
Book book;
Book *andi;
strcpy(book.title, "avi");
printf("Book title : %s\n", andi->title);
return 0;
}
当我试图此代码它并没有给我一个错误,但产生..Can你告诉我,为什么发生这种情况?一个空的结果,而不是"avi"
..
任何帮助将是巨大的..Thanx
你为什么期望它打印''avi'''? – juanchopanza
C中不允许使用数组索引'0'。您可以使用灵活的数组成员,但这在这里也没有意义。 'strcpy'在这里调用_undefined behaviour_。 – Olaf