Score:0

gcc-10 (10.3.0) ไม่จัดการโครงสร้างที่ไม่ระบุชื่ออย่างถูกต้องหรือไม่

ธง br
A L
$ gcc-10 -- รุ่น
gcc-10 (อูบุนตู 10.3.0-1ubuntu1~20.04) 10.3.0

$ cat test.c
โครงสร้าง A {
    int a;
};

โครงสร้าง B {
    int ข;
    โครงสร้าง A;
};

int main (โมฆะ)
{
    โครงสร้าง Bc;
    ค.a = 0;
    cb = 1;
    กลับ 0;
}

$ gcc-10 test.c
test.c:7:13: คำเตือน: การประกาศไม่ได้ประกาศอะไรเลย
    7 | โครงสร้าง A;
      | ^
test.c: ในฟังก์ชัน âmainâ:
test.c:13:6: ข้อผิดพลาด: âstruct Bâ ไม่มีสมาชิกชื่อ âaâ
   13 | ค.a = 0;
      | ^

การเพิ่ม -std=c17 ไม่สร้างความแตกต่าง ฉันตรวจสอบ (กับ -v ตัวเลือกนั้น ซีซี1 ถูกเรียกจากตำแหน่งที่ถูกต้อง (/usr/lib/gcc/x86_64-linux-gnu/10/cc1 ). แหล่งที่มาควรรวบรวมแม้ว่า gcc 10.2.0 (ใช้กับ Cygwin เป็นต้น) สามารถจัดการกับรหัสนี้ได้อย่างสมบูรณ์แบบ:

$ gcc -- รุ่น
gcc (จีซีซี) 10.2.0
การทดสอบ $ gcc.c
$

(ไม่มีข้อผิดพลาด).

นี่คือสิ่งที่ติดตั้งเป็น "gcc-10":

cc-10-base/focal-updates, focal-security, now 10.3.0-1ubuntu1~20.04 amd64 [ติดตั้งแล้ว, อัตโนมัติ]
gcc-10/focal-updates,focal-security ตอนนี้ 10.3.0-1ubuntu1~20.04 amd64 [ติดตั้งแล้ว]
libgcc-10-dev/focal-updates,focal-security ตอนนี้ 10.3.0-1ubuntu1~20.04 amd64 [ติดตั้งแล้ว อัตโนมัติ]

ระบบของฉัน:

$ uname -a
Linux xxx 5.11.0-25-generic #27~20.04.1-Ubuntu SMP อ. 13 ก.ค. 17:41:23 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux

ความช่วยเหลือใด ๆ ที่จะได้รับการชื่นชมอย่างมาก!

ขอบคุณ!

galexite avatar
pk flag
ฉันคิดว่านี่เป็นคำถามสำหรับ StackOverflow ไม่ใช่ AskUbuntu
Score:0
ธง br
A L

ดูเหมือนกับ -fms-ส่วนขยาย ถูกกำหนดโดยปริยายภายใต้ Cygwin ดังนั้นให้เพิ่มเข้าไปใน จีซีซี คำสั่งบน Ubuntu แก้ปัญหาได้

โพสต์คำตอบ

คนส่วนใหญ่ไม่เข้าใจว่าการถามคำถามมากมายจะปลดล็อกการเรียนรู้และปรับปรุงความสัมพันธ์ระหว่างบุคคล ตัวอย่างเช่น ในการศึกษาของ Alison แม้ว่าผู้คนจะจำได้อย่างแม่นยำว่ามีคำถามกี่ข้อที่ถูกถามในการสนทนา แต่พวกเขาไม่เข้าใจความเชื่อมโยงระหว่างคำถามและความชอบ จากการศึกษาทั้ง 4 เรื่องที่ผู้เข้าร่วมมีส่วนร่วมในการสนทนาด้วยตนเองหรืออ่านบันทึกการสนทนาของผู้อื่น ผู้คนมักไม่ตระหนักว่าการถามคำถามจะมีอิทธิพลหรือมีอิทธิพลต่อระดับมิตรภาพระหว่างผู้สนทนา