C语言中一个结构不能包含指向自己的指针吗


Posted in 面试题 onMay 25, 2012
我似乎不能成功定义一个链表。我试过typedef struct { char*item; NODEPTR next; } *NODEPTR; 但是编译器报了错误信息。难道在C语言中一个结构不能包含指向自己的指针吗?
C 语言中的结构当然可以包含指向自己的指针; [K&R2, 第6.5 节] 的讨论和例子表明了这点。NODEPTR 例子的问题是在声明next 域的时候typedef 还没有定义。为了解决这个问题, 首先赋予这个结构一个标签(“struct node”)。然后,声明“next” 域为“struct node *”, 或者分开typedef 定义和结构定义, 或者两者都采纳。以下是一个修改后的版本:
struct node {
char *item;
struct node *next;
};
typedef struct node *NODEPTR;
至少还有三种同样正确的方法解决这个问题。在用typedef 定义互相引用的两个结构时也会产生类似的问题, 可以用同样的方法解决。

Tags in this post...

面试题 相关文章推荐
PHP开发的一般流程
Aug 13 面试题
面向对象编程OOP的优点
Jan 22 面试题
数据库连接池的工作原理
Sep 26 面试题
C语言笔试集
Jul 24 面试题
华为C++笔试题
Aug 05 面试题
数据库面试要点基本概念
Oct 31 面试题
广州迈达威.net面试题目
Mar 10 面试题
abstract是什么意思
Feb 12 面试题
介绍一下grep命令的使用
Jun 12 面试题
介绍一下grep命令的使用
Jun 28 面试题
linux面试题参考答案(11)
May 01 面试题
简单的JAVA编程面试题
Mar 19 面试题
C/C++有关内存的思考题
Dec 04 #面试题
C语言基础笔试题
Apr 27 #面试题
南京迈特望C/C++面试题
Jul 09 #面试题
C语言怎样定义和声明全局变量和函数最好
Nov 26 #面试题
C,C++的几个面试题小集
Jul 13 #面试题
Java工程师面试集锦之Spring框架
Jun 16 #面试题
2019年Java 最常见的 面试题
Oct 19 #面试题
You might like
用来给图片加水印的PHP类
2008/04/09 PHP
php escape URL编码
2008/12/10 PHP
使用php的HTTP请求的库Requests实现美女图片墙
2015/02/22 PHP
golang与php实现计算两个经纬度之间距离的方法
2016/07/22 PHP
php 文件下载 出现下载文件内容乱码损坏的解决方法(推荐)
2016/11/16 PHP
thinkphp5实现无限级分类
2019/02/18 PHP
CSS中简写属性要注意TRouBLe的顺序问题(避免踩坑)
2021/03/09 HTML / CSS
Javascript与vbscript数据共享
2007/01/09 Javascript
30个最好的jQuery 灯箱插件分享
2011/04/25 Javascript
JavaScript实现的in_array函数
2014/08/27 Javascript
JQuery中两个ul标签的li互相移动实现方法
2015/05/18 Javascript
js中跨域方法原理详解
2015/07/19 Javascript
javascript实现网页中涉及的简易运动(改变宽高、透明度、位置)
2015/11/29 Javascript
浅析jQuery中使用$所引发的问题
2016/05/29 Javascript
Javascript中indexOf()和lastIndexOf应用方法实例
2016/08/24 Javascript
Bootstrap源码解读媒体对象、列表组和面板(10)
2016/12/26 Javascript
bootstrap table表格插件使用详解
2017/05/08 Javascript
十分钟带你快速了解React16新特性
2017/11/10 Javascript
js 实现在2d平面上画8的方法
2018/10/10 Javascript
ES6 async、await的基本使用方法示例
2020/06/06 Javascript
解决vuex刷新数据消失问题
2020/11/12 Javascript
Python读取Excel的方法实例分析
2015/07/11 Python
快速解决安装python没有scripts文件夹的问题
2018/04/03 Python
如何使用Python 打印各种三角形
2019/06/28 Python
python sqlite的Row对象操作示例
2019/09/11 Python
基于python实现学生信息管理系统
2019/11/22 Python
opencv python Canny边缘提取实现过程解析
2020/02/03 Python
python 成功引入包但无法正常调用的解决
2020/03/09 Python
C/C++程序员常见面试题二
2015/11/19 面试题
2014年寒假社会实践活动心得体会
2014/04/07 职场文书
保护动物倡议书
2014/04/15 职场文书
先进个人事迹材料
2014/12/29 职场文书
银行催款通知书
2015/04/17 职场文书
一篇文章告诉你如何实现Vue前端分页和后端分页
2022/02/18 Vue.js
Ruby使用Mysql2连接操作MySQL
2022/04/19 Ruby
Python测试框架pytest高阶用法全面详解
2022/06/01 Python