gpt4 book ai didi

c - 原始代码和修改后的代码有什么区别?

转载 作者:行者123 更新时间:2023-11-30 21:43:35 24 4
gpt4 key购买 nike

这是代码:

typedef struct 
{
char name[128];
int salary;
} Employee;


Employee *input_employee()
{
Employee *e = (Employee*)malloc(sizeof(Employee));
scanf("%[^/]s" , e.name);
return e;
}

main() 中调用并给出编译错误,但是,在 input_employee() 函数中进行微小更改后,即:

e.name; 更改为 e->name;

编译没有错误。

修正的意义是什么?最初的错误是什么?

最佳答案

要访问对象实例中的 Stuct 成员,您可以使用点(访问)运算符 .,但是当对象实例是指针时,您需要取消引用首先访问它,然后访问成员,即:(*e).name,相当于e->name,称为箭头运算符

关于c - 原始代码和修改后的代码有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39555155/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com