#include <iostream>
using namespace std;
int main();
{ union numbericUnion
{
int intValue;
long longValue;
double doubleValue;
};
numbericUnion myUnion;
myUnion.intValue = 3;
cout << myUnion.intValue << endl;
myUnion.doubleValue = 4.5;
cout << myUnion.doubleValue << endl;
cout << myUnion.intValue; cout << endl;
}
在第一个括号&#34; {&#34;,代码表明&#34;期望不合格的身份&#34;。你能帮忙吗?我是一个真正的初学者,靠自己学习。
答案 0 :(得分:1)
int main(); ^
这是您唯一的语法错误。
在main
内部定义联合没有技术上错误,但当你尝试使用高度复杂和危险时,所有错误当你仍在努力解决分号错误时,就像工会一样。
实际上,您已经错误地使用了union,并且在运行时调用了未定义的行为。
答案 1 :(得分:0)
用以下代码替换您的代码:
Abonne
BTW,return out << static_cast<const Abonne&>(etudiant) << " ... and more" << endl;
// ^^^^^^^^^^^^^^^^^^^^^^^^^^
不是一个很好的习惯。您可以改为使用它:
#include <iostream>
using namespace std;
int main(){
union numbericUnion
{
int intValue;
long longValue;
double doubleValue;
};
numbericUnion myUnion;
myUnion.intValue = 3;
cout << myUnion.intValue << endl;
myUnion.doubleValue = 4.5;
cout << myUnion.doubleValue << endl;
cout << myUnion.intValue;
cout << endl;
}