typedef

0. 理解


  • 作用:给一个 已知数据类型 起别名

1. 基本数据类型


typedef int Integer;
int main() {
  Integer num = 100;
  printf("%i\n", num);
  return 0;
}

2. 指针


typedef char *String;
int main() {
  String name = "王小熊";
  printf("name = %s\n", name);
  return 0;
}
int sum(int v1, int v2) {
  return v1 + v2;
}
int minus(int v1, int v2) {
  return v1 - v2;
}
typedef int(*functionPotinter)(int , int);
int main() {
  functionPotinter sumP = sum;
  printf("sum = %i\n", sumP(20, 10));
  functionPotinter minusP = minus;
  printf("minus = %i\n", minusP(20, 10));
  return 0;
}

3. 结构体


struct Person {
  char *name;
  int age;
  double height;
};
typedef struct Person SPerson;
int main() {
  SPerson sp = {"秦子阳", 18, 1.88};
  printf("%s\n", sp.name);
  return 0;
}
typedef struct Person {
  char *name;
  int age;
  double height;
} Sperson;
int main() {
  Sperson sp = {"秦子阳", 18, 1.88};
  printf("%s\n", sp.name);
  return 0;
}
typedef struct {
  char *name;
  int age;
  double height;
} Sperson;
int main() {
  Sperson sp = {"秦子阳", 18, 1.88};
  printf("%s\n", sp.name);
  return 0;
}

4. 枚举


enum Gender {
  kGenderMale,
  kGenderFemale
};
typedef enum Gender SEX;
int main() {
  SEX sex = kGenderFemale;
  printf("%i\n", sex);
  return 0;
}
typedef enum Gender {
  kGenderMale,
  kGenderFemale
} SEX;
int main() {
  SEX sex = kGenderFemale;
  printf("%i\n", sex);
  return 0;
}
typedef enum {
  kGenderMale,
  kGenderFemale
} SEX;
int main() {
  SEX sex = kGenderFemale;
  printf("%i\n", sex);
  return 0;
}

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容