【发布时间】:2010-12-12 20:19:44
【问题描述】:
您好,我正在自学 C,我对以下代码有点困惑,因为我不知道我是否正确理解了代码。如果有人能阅读我的解释并在我错了时纠正我,我将非常感激。
代码来自头文件。此时程序的功能应该是无趣的,因为我的理解问题是关于指针和函数返回的值。所以首先我要在我的员工结构中声明 3 个 char 数组和一个整数。
struct employee
{
char firstname[11];
char lastname[11];
char number[11];
int salary;
}
头文件中声明了 5 个函数。第一个函数接受 4 个值(3 个指针和一个 int)并返回一个指向结构的指针。第二个函数获取一个指向“struct employee”的指针并返回一个指针指向struct employee 中数组“char firstname”的元素。函数 3 和 4 对其他两个数组执行相同的操作。
函数 5 获取指向 struct employee 的指针,但返回一个 int 而不是指针。所以它只是在结构中使用声明的变量。
struct employee* createEmployee(char*, char*, char*, int); //1
char* firstname (struct Employee*); //2
char* lastname (struct Employee*); //3
char* number (struct Employee*); //4
int salary (struct Employee*); //5
【问题讨论】:
-
没有函数体很难说它们做了什么,但签名显示了你解释的内容。问题是什么?
-
我的问题是我的解释是否正确。我不确定我是否理解在这种情况下指针是如何工作的。
标签: c