c - 为什么我收到错误 "expected expression before ..."?

标签 c struct typedef

我是编码新手,我是葡萄牙人,所以我的英语不太好。

我的问题:

int main()
{
    typedef struct Coiso{
        char cor_cabelo[100];
        int idade;
        float altura;

    }Coiso;


    printf ( "Insira a cor do cabelo do coiso\n");
    scanf ( "%s", Coiso);

    printf ( "%s\n", Coiso.cor_de_cabelo);

return 0;
}

所以,我在 geany 中编译了这个并得到一个错误:expected expression before "coiso"

为什么我会收到此错误?

最佳答案

正如其他人所说,Coiso 只是一种自定义类型,例如 int 或 bool。 你必须用它声明一个变量。因此要编辑您的代码。

Coiso var;

scanf ( "%s", var);

printf ( "%s\n", var.cor_de_cabelo);

关于c - 为什么我收到错误 "expected expression before ..."?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54099437/

相关文章:

c++ - 如何在 C 中映射继承的 C++ 结构?

c - C 中不兼容的枚举类型

c - 使用 typedef 结构从不兼容的指针类型赋值

c - 执行 fork() 时在某些内存页上禁用写时复制(COW)

Golang 反射(reflect)在 slice 中获取结构成员

c - 线程只会对数组的第一个分区进行排序(冒泡排序,Pthread)

特定类型的指针可以分配给指向包含与其成员之一相同类型的 union 体的指针吗?

c - 全局结构体指针初始化

c - 如何自动获取常量字符串的第一个字符作为常量字符?

c - 这段代码有一个错误