iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > 其他教程 >C语言中定义和使用的特殊标准是什么
  • 717
分享到

C语言中定义和使用的特殊标准是什么

2023-06-16 17:06:48 717人浏览 八月长安
摘要

本文小编为大家详细介绍“C语言中定义和使用的特殊标准是什么”,内容详细,步骤清晰,细节处理妥当,希望这篇“C语言中定义和使用的特殊标准是什么”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。一、ANSI C特殊标准定

本文小编为大家详细介绍“C语言中定义和使用的特殊标准是什么”,内容详细,步骤清晰,细节处理妥当,希望这篇“C语言中定义和使用的特殊标准是什么”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。

一、ANSI C特殊标准定义罗列一些常见的特殊定义:

__FILE__:正在编译文件的路径及文件名

__LINE__:正在编译文件的行号

__DATE__:编译时刻的日期字符串 如“July 19 2019”

__TIME__:编译时刻的时间字符串 如”22:00:00“

代码:

char BuildFile[] = __FILE__; int  BuildLine = __LINE__; char BuildDate[] = __DATE__; char BuildTime[] = __TIME__;  printf("编译文件路径:%s\n", BuildFile); printf("编译代码所在行:%d\n", TestLine); printf("编译日期:%s\n", BuildDate); printf("编译时间:%s\n", BuildTime);

提示:__LINE__是整型数据;

其实除了这些还有很多相关的定义,比如:

1.__FUNCTION__:函数名,类型为:字符常量指针。

char const* BuildFunName = __FUNCTioN__; printf("函数名称为:%s\n", BuildFunName);

2.__VER__:IDE版本信息,类型为:整型。

如我用的IAR版本为:7.80.04,如下图:

C语言中定义和使用的特殊标准是什么

代码:

int  IDEVersion = __VER__; printf("IDE版本:%d\n", IDEVersion);

输出:

IDE版本:7080004

二、可变参数

我们在学习C语言的时候,都知道printf是可变参数的函数:

char a = 1; char b = 2; char c = 3; printf("a = %d\n", a); printf("a = %d; b = %d\n", a, b); printf("a = %d; b = %d; c = %d\n", a, b, c);

上面就是可变参数printf的例子,也就是说参数可以一个也可以多个。

而接下来说的__VA_ARGS__,就是一个可变参数宏,与printf中可变参数的宏定义一个道理,是新C99规范中增加的。

1.关于__VA_ARGS__

__VA_ARGS__它是一个可变参数的宏,就是将左边宏中“...” 的内容原样抄写在右边 __VA_ARGS__ 所在的位置。

要注意的是,printf 的输出格式是括号内左边是字符串,右边是变量,而且右变量与左输出格式是一一对应的,不对应就会出错。可以参看下面那个例子,  __VA_ARGS__其实是遵循了printf的格式。

...缺省号代表一个可以变化的参数表。使用保留名 __VA_ARGS__ 把参数传递给宏。当宏的调用展开时,实际的参数就传递给  printf()了。

2.实例说明

#define SENSOR_Printf(...)  printf("--SENSOR--"__VA_ARGS__) int TemperatureVal = 25; SENSOR_Printf("温度 = %d℃\n", TemperatureVal);

输出结果:

--SENSOR--温度 = 25℃

用心的朋友可能会猜测的到:“...”类似等于“__VA_ARGS__”。

从例子中我们可以看得出来,__VA_ARGS__的用途,主要是用于可变参数的函数。我们使用较多的printf就是最常见的一个。

如果我们的工程很庞大,我们就可以将打印信息分类,这样的好处就是方便我们识别各类打印信息。

读到这里,这篇“C语言中定义和使用的特殊标准是什么”文章已经介绍完毕,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容的文章,欢迎关注编程网其他教程频道。

--结束END--

本文标题: C语言中定义和使用的特殊标准是什么

本文链接: https://www.lsjlt.com/news/284419.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • C语言中定义和使用的特殊标准是什么
    本文小编为大家详细介绍“C语言中定义和使用的特殊标准是什么”,内容详细,步骤清晰,细节处理妥当,希望这篇“C语言中定义和使用的特殊标准是什么”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。一、ANSI C特殊标准定...
    99+
    2023-06-16
  • C语言中定义和使用特殊标准
    本篇文章给大家分享的是有关C语言中定义和使用特殊标准,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。一、ANSI C特殊标准定义罗列一些常见的特殊定义:__FILE__:正在编译...
    99+
    2023-06-16
  • C语言宏中#和##特殊符号怎么用
    这篇文章将为大家详细讲解有关C语言宏中#和##特殊符号怎么用,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。宏中 "#" 和 "##"...
    99+
    2024-04-02
  • 什么是c语言的标准函数名
    c 语言标准函数名是 c 标准库提供的函数预定义名称,用于执行各种任务,例如输入/输出、字符串操作、数学计算和内存管理。命名约定通常包括字母开头、小写字母、数字或下划线,并使用蛇形大小写...
    99+
    2024-04-13
    c语言 标准库
  • C语言宏定义的用法是什么
    C语言宏定义是一种预处理指令,用于在程序编译之前进行文本替换。宏定义可以将一个标识符(通常是一个函数或常量)替换为指定的代码段或值。...
    99+
    2023-10-11
    c语言
  • C语言宏的定义与使用方法是什么
    本文小编为大家详细介绍“C语言宏的定义与使用方法是什么”,内容详细,步骤清晰,细节处理妥当,希望这篇“C语言宏的定义与使用方法是什么”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。一、C语言中的宏定义#define...
    99+
    2023-06-30
  • C语言中的自定义类型是什么
    C语言中的自定义类型是什么,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。结构大小我们先随便给出一个结构体,为了计算他的大小,我给出完整的打印方案:typedef st...
    99+
    2023-06-28
  • C语言的函数怎么定义和使用
    本篇内容主要讲解“C语言的函数怎么定义和使用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“C语言的函数怎么定义和使用”吧!关于函数函数是C语言的基本单元,函数中包含实现程序功能的代码。C语言程序...
    99+
    2023-06-30
  • c语言中小数用什么定义
    c语言中的小数由浮点数表示,包括实数和复数。实数使用类型float或double,复数使用complex类型修饰符(需要complex.h头文件)。 C 语言中小数的定义 在 C 语言...
    99+
    2024-05-02
    c语言
  • c语言中函数的定义方法是什么
    在C语言中,函数的定义通常包含以下几个部分:1. 返回类型:函数可以有不同的返回类型,如int、float、void等,用来表示函数...
    99+
    2023-09-29
    c语言
  • c语言中常量定义的规则是什么
    本篇内容介绍了“c语言中常量定义的规则是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!c语言常量定义规则常量的定义:常量是指在程序运行过...
    99+
    2023-06-08
  • c语言用户名定义规则是什么
    在C语言中,用户名的定义规则是:1. 用户名只能由字母、数字和下划线组成。2. 用户名必须以字母或下划线开头,不能以数字开头。3. ...
    99+
    2023-08-16
    c语言
  • c语言宏定义用法规则是什么
    C语言宏定义的用法规则如下:1. 宏定义的格式为:#define 宏名 替换文本。2. 宏名必须是一个有效的C标识符,并且不可以是C...
    99+
    2023-10-11
    c语言
  • C语言中自定义函数的流程是什么
    在C语言中,自定义函数的流程如下:1. 函数声明:在函数调用之前,需要先声明函数。函数声明包括函数的返回类型、函数名、参数的类型和个...
    99+
    2023-09-15
    C语言
  • C语言的概念和特点是什么
    本篇内容介绍了“C语言的概念和特点是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!我们都知道,C语言是一种计算机程序设计语言。它既有高级...
    99+
    2023-06-17
  • c语言定义字符的方法是什么
    在 C 语言中,字符类型使用 char 关键字进行定义。要定义一个字符变量,可以按照以下格式: char myChar = '...
    99+
    2024-03-13
    c语言
  • C语言宏定义怎么使用
    这篇文章主要讲解了“C语言宏定义怎么使用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“C语言宏定义怎么使用”吧!一、C语言中函数的“缺陷”实参和形参之间仅仅是值传递,因此,函数中无法直接改变...
    99+
    2023-06-30
  • c语言常量定义的规则是什么
    c语言中常量定义的规则如下: 整型常量:可以是十进制、八进制、十六进制或二进制形式的数字,例如10、075、0xA、0b101。 ...
    99+
    2024-04-02
  • linux中的特殊字符及含义是什么
    这篇文章主要讲解了“linux中的特殊字符及含义是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“linux中的特殊字符及含义是什么”吧! ...
    99+
    2023-04-20
    linux
  • C语言标准库函数qsort怎么使用
    C语言标准库函数qsort可以用来对数组进行快速排序。qsort函数的原型如下:```cvoid qsort(void *base,...
    99+
    2023-08-25
    C语言 qsort
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作