C语言结构类型变量,它会报错 [Error] braces around scalar initializer for type 'char' 不知道怎么解决,求解惑

#include<stdio.h>
#include<string.h>
struct birthday
{
int month;
int day;
int year;
};
struct student
{
int num;
char name[8][8];
char sex8[8][8];
int age;
struct birthday;
char addr[8][8];
};
struct student a={

17589986523,
"LiFeng",
"M",
    29,
{
6,
1,
1992,
},
"deijing",
 

};

初始化有错误,首先第一个num值溢出了;后面两个是字符串数组,但你只传递了一个字符串
把所有字符串定义去掉第二维,比如char name[8][8]改为char name[8]