这个数组越界吗

来源:百度知道 编辑:UC知道 时间:2024/05/28 04:55:10
struct stu
{
int num;
char *name;
char sex;
float score;
}boy[5]={
{101,\"li ping\",\"m\",45},
{102,\"zhang ping\",\"m\",62.5},
{103,\"he fang\",\"f\",92.5},
{104,\"cheng ling\",\"f\",87},
{105,\"wang ming\",\"m\",58};
}

#include <iostream.h>
struct stu
{
int num;
char *name;
char sex;
float score;
}boy[5]={
{101,"\"li ping\"",'m',45},
{102,"\"zhang ping\"",'m',62.5},
{103,"\"he fang\"",'f',92.5},
{104,"\"cheng ling\"",'f',87},
{105,"\"wang ming\"",'m',58}
};

这是你想要的赋值。。。 当\ 加字符时 表示要输出这个字符 比如 \" 就是想输出 " 而已,\ 省略,,,,"\"li ping\""这样赋值"li ping",,记得字符串 俩边要加 "" 号..... 如果想赋值 li ping,那么 只要 "zhang ping" 就行...另外char 只能存单字符... 单字符要 '' 括着.....

越界好像没有,但sex是char型,是单个字符,你怎么用"m","f"双引号了?而且name最好用char数组而不是指针,用指针的话你就没法修改name的值了.

不越界,不是越界不越界的事,
sex是char型,是单个字符,应该用单引号。
name最好用char数组,用指针的话你就没法修改name的值
另外,你初始化name和sex时,用