A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© john3015 中级黑马   /  2015-11-11 22:21  /  880 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

当一个结构体嵌套多个结构体的时候,怎么给内部的结构体一次赋值呢?

2 个回复

倒序浏览
在定义变量时候可以一次赋值啊
回复 使用道具 举报
一般来说C99标准貌似不支持在定义结构体的时候直接给他设置默认值,你如果想对结构体进行一次赋值一般在定义结构体变量的时候直接进行赋值,这样就可以了。比如:
  1. #include <stdio.h>
  2. #include <stdlib.h>

  3. typedef struct Point
  4. {
  5.         int x;
  6.         int y;
  7. };

  8. typedef struct Rect
  9. {
  10.         Point start;
  11.         Point end;
  12. };

  13. void showRect (Rect _rect)
  14. {
  15.         printf("start: (%d %d); end: (%d %d) \n", _rect.start.x, _rect.start.y, _rect.end.x, _rect.end.y);
  16. }

  17. int main()
  18. {
  19.     Rect rect;
  20.     rect.start.x = 0;
  21.     rect.start.y = 0;
  22.     rect.end.x = 10;
  23.     rect.end.y = 10;
  24.     showRect (rect);
  25.         system ("pause");
  26.         return 0;
  27. }
复制代码
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马