typeof关键字的作用

一、typeof详解:

前言:     typeof关键字是C语言中的一个新扩展,这个特性在linux内核中应用非常广泛。(其实这和C++的auto关键字和可以推断decltype关键字相当类似)

二、实例:

      1,把y定义成x指向的数据类型:

      typeof(*x) y;

   2,把y定义成x指向数据类型的数组:

      typeof(*x) y[4];

   3,把y定义成一个字符指针数组:               typeof(typeof(char *)[4] y;       这与下面的定义等价:               char *y[4];

   4,typeof(int *) p1,p2; /* Declares two int pointers p1, p2 */               int *p1, *p2;

   5,typeof(int) *p3,p4;/* Declares int pointer p3 and int p4 */               int *p3, p4;

   6,typeof(int [10]) a1, a2;/* Declares two arrays of integers */               int a1[10], a2[10];

三,局限

typeof构造中的类型名不能包含存储类说明符,如externstatic。不过允许包含类型限定符,如constvolatile。    例如,下列代码是无效的,因为它在typeof构造中声明了extern:         typeof(extern int) a;

四,参考博客

1,http://blog.csdn.net/wslong/article/details/7728811   

2,http://gcc.gnu.org/onlinedocs/gcc/Typeof.html#Typeof

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏有趣的Python

慕课网-c++远征离港篇-学习笔记const 与引用

c++远征离港篇 离港总动员 引用VS指针、 #define VS const 函数默认值&函数重载 内存管理(头疼) 封装 继承 多态 c++语言引用: 引用...

33910
来自专栏debugeeker的专栏

《coredump问题原理探究》Linux x86版6.8节多继承coredump例子

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/xuzhina/article/detai...

152
来自专栏塔奇克马敲代码

第6章 函数

1697
来自专栏C/C++基础

C++中endl的本质是什么

自从在C语言的教科书中利用Hello world程序作为学习的起点之后,很多程序设计语言的教科书都沿用了这个做法。我们写过的第一个C++程序可能就是这样的。

791
来自专栏流浪猫的golang

go rune 简要分析

今天看golang代码看到一个单词 rune ,熟悉而陌生。之前学习go并没有过多注意这个“神秘符号”。 rune在golang中是int32的别名,在各个...

651
来自专栏GopherCoder

Python 强化训练:第五篇

1313
来自专栏微信公众号:Java团长

Java HashMap的工作原理

面试的时候经常会遇见诸如:“java中的HashMap是怎么工作的”,“HashMap的get和put内部的工作原理”这样的问题。本文将用一个简单的例子来解释下...

462
来自专栏破晓之歌

JAVA入门1 原

下载地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk9-downloads-3848...

592
来自专栏Pythonista

python内置函数大全

最近一直在看python的document,打算在基础方面重点看一下python的keyword、Build-in Function、Build-in Cons...

511
来自专栏Coding迪斯尼

reactjs开发自制编程语言编译器:实现变量绑定和函数调用

643

扫描关注云+社区