【发布时间】:2012-07-11 11:29:59
【问题描述】:
我有以下代码。
struct rectangle {
int length;
int breadth;
};
int main (void)
{
struct rectangle a,b;
a.length = 10;
a.breadth = 5;
b=a;
printf("\nValues of b.length = %d, b.breadth=%d\n",b.length,b.breadth);
return 0;
}
上面的赋值语句是有效的吗?(b=a)我是在我的项目中这样做的。我收到了评论评论,说明这种类型的作业是错误的,我应该使用 memcpy。我打印了 b 的值并检查了。值是正确的。我想知道为什么上面的分配是错误的? 如果将结构变量传递给函数并将其捕获到单独的变量中时会发生什么错误?我希望我的问题很清楚。如果我对我的问题不清楚,请回复我。
【问题讨论】:
-
您的代码确实无效,但这是由于
main签名,而不是赋值。 -
你能告诉我主签名有什么问题吗?
-
main 应该返回 int。 (除非:blablabala)
-
有一个除非,用于“独立实现”。第二个签名应该是
int main(void) -
int main(void)!!!int main()不是签名。
标签: c coding-style