当前位置:天才代写 > tutorial > C语言/C++ 教程 > 学点C语言(29):数据范例 – 界说新范例(typedef)

学点C语言(29):数据范例 – 界说新范例(typedef)

2017-11-03 08:00 星期五 所属: C语言/C++ 教程 浏览:384

自界说的范例名一般要大写, 以提示这是自定名的范例.

1. 把 unsigned long 改名为 UINT:

#include <stdio.h>

int main(void)
{
  typedef unsigned long UINT;

  UINT num = 1234567890;
  printf("%lu\n", num);

  getchar();
  return 0;
}

2. 给一个布局重定名:

#include <stdio.h>

int main(void)
{
  struct Rec {
    char c;
    int i;
    long d;
  };

  typedef struct Rec MYREC;

  MYREC r1;

  r1.c = 1;
  r1.i = 2;
  r1.d = 3;

  printf("%d, %d, %d\n", r1.c, r1.i, r1.d);
  printf("布局巨细: %u, %u, %u", sizeof(struct Rec), sizeof r1, sizeof(MYREC));

  getchar();
  return 0;
}

3. 把整数指针界说为: PINT:

#include <stdio.h>

int main(void)
{
  typedef int * PINT;

  int num = 123;
  PINT p = &num;

  printf("%d, %p\d", *p, p);

  getchar();
  return 0;
}

4. 同时用于布局界说:

#include <stdio.h>

int main(void)
{
  struct Rec1 {
    int x,y;
  } r1 = {11, 22}; /* 同时界说了变量 r1 */

  typedef struct Rec2 {
    double a,b;
  } REC3;      /* 此时的 REC3 不是变量, 而是新界说的范例*/

  REC3 r2 = {1.1, 2.2};

  printf("%d, %d\n", sizeof(struct Rec1), sizeof(struct Rec2));
  printf("%d, %d, %d\n", sizeof(REC3), sizeof r1, sizeof r2);

  printf("\n%d, %d", r1.x, r1.y);
  printf("\n%g, %g", r2.a, r2.b);

  getchar();
  return 0;
}

返回“学点C语言 – 目次”

 

    关键字:

天才代写-代写联系方式