c中 结构体数组 extern 时的问题
a.c文件中Studentstudent[]={{1,2,3},{1,2,3},{1,2,3},{1,2,3},{1,2,3},{1,2,3},};b.c文件中exter...
a.c文件中
Student student[] =
{
{1,2,3},
{1,2,3},
{1,2,3},
{1,2,3},
{1,2,3},
{1,2,3},
};
b.c文件中
extern Student student[];
数组输出没有问题,但调用num = sizeof(student);
后num = 0;调试时sizeof(student)的值却是正确的。 展开
Student student[] =
{
{1,2,3},
{1,2,3},
{1,2,3},
{1,2,3},
{1,2,3},
{1,2,3},
};
b.c文件中
extern Student student[];
数组输出没有问题,但调用num = sizeof(student);
后num = 0;调试时sizeof(student)的值却是正确的。 展开
展开全部
数组名传递的实际上是内存地址,sizeof找不到内存里面的多少值
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
错误应该不在这里,可能在其它地方,比如:num负值之后是否对其有其它的操作,改变了它的值?或者其它的一些小错误。好好检查一下,慢慢来。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
Student student[] =
//第一个Student你哪来的?
//第一个Student你哪来的?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询