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

企业网站建设实训心得动态ip做网站影响seo吗

企业网站建设实训心得,动态ip做网站影响seo吗,wordpress中文官网上,医院网站建设的计划C语言大佬的必杀技—宏的高级用法 目录: 字符串化标记的拼接宏的嵌套替换多条语句防止一个文件被重复包含宏和函数的区别 可能大家在学习的时候用得比较少#xff0c;但是在一些代码量比较大的时候#xff0c;这样使用#xff0c;可以大大的提高代码的可读性#xff0c;…C语言大佬的必杀技—宏的高级用法 目录: 字符串化标记的拼接宏的嵌套替换多条语句防止一个文件被重复包含宏和函数的区别 可能大家在学习的时候用得比较少但是在一些代码量比较大的时候这样使用可以大大的提高代码的可读性方便我们后期维护 1、字符串化 ------- 打印变量的值和格式化字符串 #define test(x,format) printf(#x % #format \n, x)说明 #x 在宏定义中被称为字符串化操作符它将 x 参数转换为一个字符串并在代码中插入。 % 是一个字符串用于指定输出的格式。#format 也是字符串化操作符将 format 参数转换为一个字符串并在代码中插入。整个宏的作用就是 可以用于打印变量的值和格式化字符串。 代码演示 #includestdio.h#define test(x,format) printf(#x % #format \n, x)int main() {const char* name wxf;test(name,s); //s 相当于 %sint i 1;test(i, d); //d 相当于%dreturn 0; }结果显示 2. 标记的拼接---------(将宏参数进行字符串化和连接操作) #define test(x,format) printf(#x % #format \n, x)#define test2(i) test(age ## i,d) //d 相当于%d 当然这里可以替换成其他的类型说明: 在该宏的扩展部分它将 age 和 i 进行连接操作使用 ## 连接运算符形成一个新的标识符并作为参数传递给 test 宏。 代码演示: #includestdio.h#define test(x,format) printf(#x % #format \n, x) #define test2(i) test(age ## i,d) //d 相当于%d 当然这里可以替换成其他的类型int main() {int age1 21,age222;test2(1);test2(2);return 0; }结果显示: 3. 宏的嵌套 : 宏的嵌套是我们常用的 , 话不多说,我们直接看例子 #define F(f) f(args) #define args a,b说明 第一个宏里面的f 替换成fargs, 然后下一个宏将args 替换成 a b 。两者嵌套 代码演示 #define F(f) f(args) #define args a,bvoid test3(int number1, int number2) {printf( %d %d %d\n , number1, number2 , number1 number2 ); }int main() {int a 21,b22;F(test3);return 0; }结果显示 4. 替换多条语句 #define YUE_HUIU(name) do { \ printf(%s ,我们一起去看电影把!\n , name); \printf(%s, 我们一起去唱歌吧\n , name); \printf(%s, 我们一起回家吧!\n, name); \ }while (0);注意: 使用了 do...while(0) 结构来创建一个匿名的代码块目的是为了让宏展开后能够正常使用分号进行语句结束。这种技巧可以避免在使用宏时造成错误的语法解析。 代码演示: /* \ 表示续航符表明这一行还没有结束 */#define YUE_HUIU(name) do { \ printf(%s ,我们一起去看电影把!\n , name); \printf(%s, 我们一起去唱歌吧\n , name); \printf(%s, 我们一起回家吧!\n, name); \ }while (0);int main() {YUE_HUI(wxf);return 0; }结果显示—(宏展开后的样子): do { ​ printf(%s ,我们一起去看电影把!\n , wxf); printf(%s,我们一起去唱歌吧\n , wxf); printf(%s, 我们一起回家吧!\n, wxf); } while (0);5. 防止头文件被重复包含 这个用法还是经常会用到的 ,我们经常会使用到一些自己定义的 头文件 代码演示: #ifndef _TOOLS_H /* tools.h 头文件的名称 */ #ifdef _TOOLS_H//头文件内容#endif // _TOOLS_H6 . 宏和函数的区别 函数调用时,先求出实参表达式的值,然后带入形参, 带参数的宏只是进行简单的字符替换.函数调用是在程序运行时处理,分配临时内存, 而宏展开(函函数),是在编译时进行的,展开时是不分配内存,也没有返回值,也没 有值传递.宏的参数没有类型 ,只是一个符号 ,展开时带入到指定的字符串中.使用宏的次数多时, 宏展开后源程序变长 ,函数调用不会使源程序变长.宏替换只会占用编译时间 ,不会占用运行时间,而函数调用占用的是运行时间(分配内存 ,传递参数 ,执行函数体). 时进行的,展开时是不分配内存,也没有返回值,也没有值传递.宏的参数没有类型 ,只是一个符号 ,展开时带入到指定的字符串中.使用宏的次数多时, 宏展开后源程序变长 ,函数调用不会使源程序变长.宏替换只会占用编译时间 ,不会占用运行时间,而函数调用占用的是运行时间(分配内存 ,传递参数 ,执行函数体).
http://www.yutouwan.com/news/116247/

相关文章:

  • 问答网站模板下载自动生成海报的网站
  • 深圳网站建设找哪家好做网站得花多少钱
  • 手机网站欢迎页面设计网站域名被抢注做商标
  • 合肥网站设计goz网站建设销售需要哪些
  • 网站建设公司有哪些比较知名的网站备案需要准备什么
  • 上传自己做的网站可以做彩票广告的网站吗
  • 做笔记的网站源码怎样帮人做网站挣钱
  • 凡科网做网站的图片涿州规划建设局网站
  • 网站维护包括云设计平台
  • 做死活题网站wordpress pdf
  • 新手学做网站 视频百度网盘北京网络推广外包公司排行
  • 做网站外贸怎么找客户wordpress 评论关闭
  • 郑州响应式建站wordpress新浪图床会挂吗
  • 金溪那里可以做网站展开网站建设
  • 定制型网站建设平台wordpress快递模板下载
  • WordPress智能友链审核标题优化方法
  • 广东双语网站建设价格建网站用什么软件
  • 关于校园网站升级建设的报告九脉堂是做网站的
  • 适合seo的建站系统商丘网吧什么时候恢复营业
  • 旅游设计网站公司网站大顶图怎么做
  • 优质的响应式网站建设2021年
  • 湖北建设执业注册管理中心网站标智客logo在线设计生成器
  • 哔哩哔哩网站怎么做视频最好的网站模板网站
  • 怎么做国外游戏下载网站做哪种类型的网站赚钱呢
  • 自己怎么给网站做优化徐州企业网站排名优化
  • 网站建设保教wordpress图片比例拉伸
  • 长春吉林建设信息网站仿摄影网站
  • 网站建设的公司合肥顺德品牌网站建设价位
  • 国展网站建设注册服务公司流程和费用
  • 蔬菜派送网站怎么做嘉兴网站模板建站