读书人

c这个类型定义如何理解

发布时间: 2012-02-19 19:43:39 作者: rapoo

c,这个类型定义怎么理解?
#define MAXSTRLEN 255
typedef unsigned char sstring[MAXSTRLEN+1]

struct sstring
{
char *ch;
int length;
}

如上。

[解决办法]
typedef unsigned char sstring[MAXSTRLEN+1];
这个是定义sstring为unsigned char[]类型,我理解typedef定义的方法是:
一个变量定义语句,前面加上typedef,变量名就是新类型名。如:
char sstring[5]; //定义数组sstring
typedef char sstring[5]; //定义类型sstring为char[5]

int (*func)(); //定义函数指针func
typedef int (*func)(); //定义func为函数指针类型

[解决办法]
sstring a = "aaa ";

相当于

char a[] = "aaa ";
[解决办法]
typedef unsigned char sstring[MAXSTRLEN+1]
将sstring定义成一个类型,这个类型为一个unsigned char类型的数组,数组的长度为MAXSTRLEN+1

struct sstring
{
char *ch;
int length;
}
这个当然是定义了一个结构体了。没有什么可以说得。

读书人网 >C语言

热点推荐