C语言中typedef可以出现在struct定义之前

摘要:
一直以为typedef必须在相应的数据类型之后才可定义,原来在前面也可以:#include#include/*thetypedefisbeforethestruct*/typedefstructpcap_if*pcap_if_p;structpcap_if{structpcap_if*next;inta;};intmain(){constpcap_if_pa=

一直以为typedef必须在相应的数据类型之后才可定义,原来在前面也可以:

#include <stdio.h>
#include <stdlib.h>

/* the typedef is before the struct */
typedef struct pcap_if* pcap_if_p;

struct pcap_if {
	struct pcap_if *next;
	int a;
};

int main()
{
	const pcap_if_p a = (pcap_if_p)malloc(sizeof(struct pcap_if));
	a->a = 1;
	a->a = 2;
	printf("%d", a->a);

	return 0;
}

免责声明:文章转载自《C语言中typedef可以出现在struct定义之前》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Vue 监听---&amp;gt;watchMac下Python和Pycharm之virtualenv下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

Windows API常识

typedef float FLOAT; typedef long LONG; typedef short SHORT typedef int INT; typedef char CHAR;   typedef unsigned int UINT; typedef unsigned int UINT32; typedef signed int INT32;...

vscode利用dev配置c语言,VSCode搭建C++/C调试编译环境(使用DevC++)

关于VSCode使用Dev C++的MinGW64来调试C++/C网上的教程试了很多,大部分都已经过时了或者说是不适配了,最后就选择使用Dev原有的东西来实现,不建议自己下载MinGW64,里面安装的时候有些选项不知道选什么的话很容易出现问题。 配置Dev下MinGW64的路径 假设Dev已经安装好了,然后现在要做的就是将Dev目录下的MinGW添加到环境...

C语言是开源的吗?C++是开源的吗?C语言、C++是两个开源的标准,而不是开源软件或其它

我一度对于C语言与C++是不是开源语言很困惑:为什么有那么多人鼓吹Java、Python、PHP等是开源语言,却没有人提C与C++开源与否呢?今天在stackoverflow上找到了几个比较满意的回答,特写篇博文总结一下老外的回答,也供各位对此问题持疑问态度的朋友一个参考。 关于C语言开源与否: C语言是一个由ISO组织中的ANSI制定的标准,任何个人或者...

iOS用域名或主机名获取IP地址(包含C语言接口 和iOS原生)

   最近工作中遇到了个新需求、需要将域名 解析成ip地址,搜了搜文章博客,发现很多人都是在用C的 structhostent*gethostbyname(constchar*); 对于OC原生的方法还是比较陌生的,因此研究了一下,封了个方法出来,供大家参考使用,话不多说、上代码 1 #import "TestTools.h" 2 3 #include...

C语言入门阶段:教你几招如何牢记常量和变量

小伙伴们有没有想过什么是C常量,什么是C变量?为什么它们是编程世界的重要组成部分?在今天就带小伙伴一起学习和了解C语言中的常量和变量。 常量: 1、整型常量(整常数) 整型常量是整数类型的数据。可用以下三种形式表示,具体如下: 十进制整数,123,-456,0; 八进制整数,如0123,-011; 十六进制整数,如0x123,-0x12。 2、实型常...

使用c语言和GMP库实现伪随机算法笔记

步骤一:安装GMP库,两种方法选其一既可 1.使用源码安装方式: 2.使用在线安装的方式: 步骤二:使用GMP库随机生成一个大数,样本代码如下: 步骤三:使用GMP库随机生成一个大数,并判断生成的大数是不是素数,样本代码如下: 步骤四:根据生成的大素数,产生下一个大素数,样本代码如下: 步骤五:根据随机产生的大素数和随机数,使用BlumBlumShus算...