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

优跃达官网网站建设项目外贸网站建设公司流程

优跃达官网网站建设项目,外贸网站建设公司流程,wordpress多站点site id,如何快速提升网站pr文章目录 专栏导读不定参函数C风格不定参函数不定参宏函数 专栏导读 #x1f338;作者简介#xff1a;花想云 #xff0c;在读本科生一枚#xff0c;C/C领域新星创作者#xff0c;新星计划导师#xff0c;阿里云专家博主#xff0c;CSDN内容合伙人…致力于 C/C、Linux 学… 文章目录 专栏导读不定参函数C风格不定参函数不定参宏函数 专栏导读 作者简介花想云 在读本科生一枚C/C领域新星创作者新星计划导师阿里云专家博主CSDN内容合伙人…致力于 C/C、Linux 学习。 专栏简介本文收录于 C项目——基于多设计模式下的同步与异步日志系统 相关专栏推荐C语言初阶系列、C语言进阶系列 、C系列、数据结构与算法、Linux 不定参函数 C语言中的不定参数函数是一种特殊类型的函数它允许你定义一个函数可以接受不定数量的参数。这些函数通常用于处理不确定数量的输入例如printf和scanf等标准库函数它们可以接受不同数量和类型的参数。 不定参函数的声明格式如下 return_type func_name (format_string, ...);return_type为函数返回值类型func_name为函数名format_string是一个格式化字符串用于指定参数的数量和类型... 表示不定数量的参数 在函数内部我们可以用一些宏或函数来对不定参数进行分解常见的宏有va_start、va_arg、va_end。 void va_start(va_list ap, last);type va_arg(va_list ap, type);void va_end(va_list ap);va_listva_list是一个类型用于声明一个参数列表的对象它的本质其实是void*va_start用于初始化va_list对象使其指向不定参数列表的第一个参数va_arg用于获取不定参数列表中的参数va_end用于清空可变参数列表 示例1 #include stdio.h #include stdarg.hvoid printNum(int count, ...) {va_list ap;va_start(ap, count); // 初始化ap指针使其指向不定参数列表的第一个参数for(int i 0; i count; i){int num va_arg(ap, int); // 从不定参数列表中抽取int类型的参数printf(%d , num);}printf(\n);va_end(ap); // 将ap置空 }int main() {printNum(5, 1, 2, 3, 4, 5);return 0; }示例2 #define _GNU_SOURCE#include stdio.h #include stdarg.hvoid myprintf(const char* format, ...) {va_list ap;va_start(ap, format);char* res;int ret vasprintf(res, format, ap);if(ret ! -1){printf(res);free(res); // res指向动态开辟的空间需要手动释放}va_end(ap); } int main() {myprintf(%s-%d\n, huaxiangyun, 100);return 0; }注意 示例中vasprintf 是一个 C 库函数它可以通过可变参数创建一个格式化的字符串并将其存储在动态分配的内存中。它的使用方法与 printf类似但它不会将结果打印到标准输出流中而是将其存储在一个指向字符数组的指针中。 函数原型如下 #include stdarg.h #include stdio.hint vasprintf(char **str, const char *format, va_list ap);C风格不定参函数 在C中有两种主要方式来创建不定参数函数 C风格的不定参数函数这种方式与C语言中的不定参数函数类似使用了C标准库中的va_list、va_start、va_arg和va_end宏。这种方式在C中仍然有效但不够类型安全不太推荐在现代C代码中使用。 C11引入的可变参数模板这是更现代和类型安全的方式使用了C的模板和新的语法特性。可变参数模板允许你定义一个接受不定数量参数的函数并且能够在编译时进行类型检查。这种方式更灵活并且是C推荐的方式。 示例3 #include iostream// 无参特化 void xprintf() {std::cout std::endl; }template typename T, typename ...Args void xprintf(const T v, Args ...args) {std::cout v;if((sizeof ...(args)) 0){xprintf(std::forwardArgs(args)...); // 递归分解参数包}else{xprintf();} }int main() {xprintf(huaxinagyun);xprintf(aaaa, 1000);return 0; }不定参宏函数 示例4 #include stdio.h#define LOG(format, ...) /printf([%s : %d]\n, format, __FILE__, __LINE__, ##__VA_ARGS__)int main() {LOG(日志消息);return 0; }
http://www.yutouwan.com/news/241885/

相关文章:

  • 网站挂黑链工具网络广告策划方案怎么做
  • 网站空间指的是什么意思子目录创建网站
  • 行业网站运营计划做网站费用
  • 企业网站建设排名口碑网站开发谢辞
  • 建站服务昆明网站开发
  • 虞城网站建设备案个人网站名称推荐
  • 中科院网站做的好的院所销售管理系统实验报告
  • 淮安网站设计公司中国设计品牌网
  • 企业网站的基本内容有哪些青县网站建设价格
  • 怎么做网站从0做到权重7做爰网站
  • 做网站设计的有些什么职位桂平网络推广
  • 网络公司企业网站模板扬中做网站的公司
  • 建设会计协会网站湖北省建设厅网站如何申诉
  • 设计免费素材网站有哪些合肥seo服务
  • 医院网站源码下载58.搜房等网站怎么做效果才好
  • 网站首页怎么制作过程saas系统是干嘛的
  • 网站后台管理系统功能做网站如何将一张图片直接变体
  • 跨境电商网站建设方案书微信端网站页面设计
  • wordpress源码网站主题阿里seo排名优化软件
  • 做二手货车都做什么网站商标注册网查询
  • 德阳建设局网站首页做盗号网站
  • 精美大气的餐饮类企业网站怎么样建网站
  • 工信部网站备案查询步骤wordpress中dw是什么
  • 郑州网站建设中国建设建设银行网站 微站建设排名
  • 网站开发需要多少钱服务甘孜建设网站首页
  • 学校 网站建设 报销服务营销案例
  • 佛山网站建设专业定制朔州网站建设价格低
  • 深圳自适应网站的公司商场网站建设模板
  • 笔记本可以做网站吗wordpress 主题 水墨
  • 嘉兴网站制作套餐毕业设计做系统网站