类型定义
可以用类型定义来建立新的数据类型名。
#include <stdio.h>
typedef int integer;
typedef char *string;
int main(int argc, char const *argv[])
{
integer i = 233;
printf("%d\n", i);
string str = "Hello World!";
printf("%s\n", str);
return 0;
}
也可以与结构定义结合使用。
#include <stdio.h>
#include <stdlib.h>
struct node
{
int data;
struct node *left;
struct node *right;
};
typedef struct node n;
int main(int argc, char const *argv[])
{
n *rootNode = (n *)malloc(sizeof(n));
n *leftNode = (n *)malloc(sizeof(n));
n *rightNode = (n *)malloc(sizeof(n));
rootNode->data = 1;
rootNode->left = leftNode;
rootNode->right = rightNode;
leftNode->data = 2;
leftNode->left = NULL;
leftNode->right = NULL;
rightNode->data = 3;
rightNode->left = NULL;
rightNode->right = NULL;
printf("root: %d.\n", rootNode->data);
printf("left: %d.\n", rootNode->left->data);
printf("right: %d.\n", rootNode->right->data);
free(rootNode);
free(leftNode);
free(rightNode);
return 0;
}