当前位置: 首页 > news >正文

公司网站备案怎么做/账户竞价托管哪里好

公司网站备案怎么做,账户竞价托管哪里好,wordpress小工具调用,扁平化网站格局单链表的C语言实现如下: typedef struct node{ //结点类型定义 DataType data; //结点的数据域 struct node *next;//结点的指针域 }ListNode; 即定义了一个结构体 node,将他重新命名为ListNode~ 我的疑惑是,结构…

单链表的C语言实现如下:

typedef struct node{   //结点类型定义
       DataType data;    //结点的数据域
       struct node *next;//结点的指针域
     }ListNode;

即定义了一个结构体 node,将他重新命名为ListNode~

我的疑惑是,结构体名为 node,但是在结构体的定义中,居然还有一个 node 类型的变量,

相当于在类MyClass中定义一个MyClass类型的私有成员变量~~这点让我很费解,后来才明白,这两者关系其实是不一样的



具体解释

解释一:

struct MyClass
{
        int a;
        MyClass *p
}

不管什么类型的指针,在32位程序里面都是32位四个字节。
所以说这个MyClass已经很明确了,总共8个字节,完全有意义啊


struct MyClass;
void main()
{
    MyClass *p = 0;
}

就像这段代码完全合法一样,MyClass具体是什么都不知道,但仍然可以使用它的指针,因为不管它是什么类型的指针,都是四个字节,都是一样的


解释二:

你只要记住一点,编译器很聪明,能够明白你这段代码代表什么意思,就够了,如果再要深究,就只能研究编译原理了。

编译器先看到你定义了结构,然后看见你在这个结构体中又使用了这个结构,因为编译器已经知道这是一个结构体,所以他可以处理这种情况。如果你把结构中的struct node *next; 这一句,替换成}ListNode *next; 编译器就会报错,因为他还没有看见过这个ListNode是什么东西。

另外,你不能在你的结构体中,再定义一个非指针类型的同样的结构体,例如struct node next;(注意,没有星号),这时,编译器也应该报错,为什么,因为这会导致定义的无限延伸!也就是说,这个定义是一个死循环,永远停不下来。


所以说,链表的C语言实现中,之所以能这样使用,是因为里面的那个变量时指针,而指针所占的字节数是已知的(不管什么类型指针,在32位操作系统中,都是占 4 个字节)

http://www.jmfq.cn/news/4839013.html

相关文章:

  • 安徽网站建设推荐 晨飞网络/seo流量是什么意思
  • 代理分销系统开发/广东seo外包服务
  • 石家庄最新疫情最新消息解封/seo积分优化
  • wordpress自定义文章列表/海城seo网站排名优化推广
  • 重庆网站备案必须到核验点/百度统计工具
  • 做个网站多少钱一个月/福州seo公司
  • 做暧嗳xo小视频免费网站/今日桂林头条新闻
  • 浙江网站推广/百度关键词推广价格查询
  • phpwind怎么做网站/网站项目开发流程
  • b2b网站如何做社群运营/国内搜索引擎
  • 武汉做胃镜国医堂z网站/网络营销的营销策略
  • qq钓鱼网站在线生成器/b站推广网站2022
  • 实时定量引物设计网站怎么做/怎么做市场营销和推广
  • 做最好的win7系统下载网站/注册网站流程
  • 有做国外婚恋交友网站/东莞市网络seo推广服务机构
  • 2核4g做网站/词爱站的关键词
  • 柴油网站怎么做/网站查询关键词排名软件
  • 建筑木工模板包工价格/seo技术分享
  • 网站建设到发布2012sevser/2023新冠结束了吗
  • 网站 ca证书怎么做/关键词排名零芯互联排名
  • 如何选择网站建设案例/baidu百度
  • 企业网站建设webbj/南宁网站快速排名提升
  • 河北网站建设团队/网站优化关键词排名
  • 佛山市住房与城乡建设局网站/杭州网站推广优化公司
  • 佘山做网站/大数据营销成功案例
  • 北京游戏网站建设/怎么做线上销售
  • 外贸网站建设 广州/外国网站的浏览器
  • 助听器网站建设方案草稿/优秀网页设计
  • 做商城网站会不会被攻击/免费做推广的网站
  • 做书的网站有哪些内容吗/日本关键词热搜榜