涡轮增压 与C++中的结构变量混淆

turbo Confusion with structure variable in C++

本文关键字:结构 变量 C++      更新时间:2023-10-16

是否可以将一个结构变量的值分配给另一个结构变量这段代码是否正确——

#include<iostream.h>
struct s1
{
    int a;
    float b;
    char c;
}   st1,st2,st3;
int main()
{
    struct s2{
            int x;
            float y;
            char z;
        }   ss1,ss2,ss3;
        // Read & Initialize structures 
        ss2=ss1;
        :
        ss3.z=st1.c;
           :
}
void func1()
{
    ss2.x=st1.a;
    ss3.y=st2.b;
    ss1.z=st3.c;
       :
    ss1=ss3;
}

请清除我对上述代码是否可以的疑问

ss2=ss1;这将取决于编译器,一些编译器将允许复制结构变量,而一些编译器则不允许。
ss2.x=st1.a;SS2 结构将是主函数的本地结构,在 funct1() 中不可用,因此它必须抛出编译错误。