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

唐山做网站优化百度助手下载

唐山做网站优化,百度助手下载,企业网站的综合要求是什么,商业网站需要多少钱目录 引言 1. 字面量 1.1 字符字面量 1.2 整型字面量 1.3 浮点字面量 2. 常量 2.1 使用预处理器指令 #define 定义常量 2.1.1 语法格式 2.1.2 使用举例 2.2 使用 const 关键字定义常量 2.3 使用 #define 和 const 定义常量的区别 引言 看了一些博文#xff0c;有的文…目录 引言 1. 字面量 1.1 字符字面量 1.2 整型字面量 1.3 浮点字面量 2. 常量 2.1 使用预处理器指令 #define 定义常量 2.1.1 语法格式 2.1.2 使用举例 2.2 使用 const 关键字定义常量 2.3 使用 #define 和 const 定义常量的区别 引言 看了一些博文有的文章对字面量和常量区别的不是很明显个人观点以下对字面量和常量的定义是比较准确的。 字面量是直接在代码中使用的程序运行期间不会改变的没有名字的固定值。所以我们只能用字面量来称呼它故叫字面量。 常量是用预处理器指令 #define 或 const 关键字定义的在程序运行期间不会改变的在代码中有名字的固定值。 1. 字面量 int i 100; 像上面语句中的数字 100这种在程序中不能修改的无法用名字称呼它的字面值常量叫做字面量。比如 printf(Hello World\n); 中的 Hello World\n 也是字面量。 1.1 字符字面量 在 ASCII 码表中编码 [0, 31] 和 127 是控制字符共 33 个字符是不可以打印的其中编码 [0, 31] 这 32 个字符主要用于控制打印机等外围设备。 编码 [32, 126] 是可显示字符也就是可以打印在屏幕上。记得以下几个编码规则在 C语言对字符进行操作的时候或许挺管用。 大写字母 A ~ Z 的 ASCII码 65 ~ 90小写字母 a ~ z 的 ASCII码 97 ~ 122大写字母比小写字母的 ASCII码小 32 (0b001000000x20) 比如: char c a小写字母变大写字母c c - 32 得到也可以做位与操作c c 0b11011111 得到数字字符 0 ~ 9 的 ASCII码 48 ~ 57所以一个数字要转换成数字字符只要将数字 加上 48 (0x30) 即可字符串的终止符为 \0ASCII 码为 0换行符 \n 的 ASCII码为 10 (0x0A) 对于这些字符字面量有4种书写格式 1) 用一对单引号把字符括起来推荐使用 #include stdio.hint main() {char c1 A;printf(%c\n, c1); // Areturn 0; } 对于不可打印字符和特殊字符用转义字符书写。 \n换行符\t水平制表符\v纵向制表符\b退格符\r回车符\f换页符\a报警响铃符\\反斜杠\双引号\单引号 #include stdio.hint main() {char c1 \\;printf(%c\n, c1);return 0; } 2) 用编码数值书写 #include stdio.hint main() {char c1 65; // 十进制大写字母 A 的ASCII码65char c2 0101; // 八进制char c3 0x41; // 十六进制printf(%c,%c,%c\n, c1, c2, c3); // A,A,Areturn 0; } 3) 对于任何字符还可以用通用的转义字符书写 \ooo其中 ooo 表示三个八进制数字注意是三个八进制数字比如即使是编码为 1 的字符也不能省掉前面那两个0。\xhh其中 x 表示十六进制hh 是二个十六进制数字 #include stdio.hint main() {char c1 \x41; // 十六进制char c2 \101; // 是3位八进制数字即使编码为 1 的字符也要写成 \001不能写成 \1printf(%c,%c, c1, c2); // A,Areturn 0; } 1.2 整型字面量 整型字面量可以用十进制、八进制、十六进制或二进制来表示。 以 0x 或 0X 开头表示十六进制以数字 0 开头表示八进制以 0b 开头表示二进制不带前缀默认是十进制 以下表示同一个整型字面量 15                        // 十进制 017                      // 八进制 0xf                       // 十六进制 0b00001111        // 二进制 #include stdio.hint main() {int i1 15;int i2 017;int i3 0xf;int i4 0b00001111;printf(%d, %d, %d, %d\n, i1, i2, i3, i4);return 0; } 整型字面量还可以带一个由 U 和 L 组合的后缀U 和 L 不分先后顺序U 可以大写也可以小写 u是 unsigned 的意思L 可以大写也可以小写 l是 long 的意思。 15u         // 无符号整型字面量 15L         //  长整形字面量推荐用大写 L因为小写字面 l 和数字 1 很容易混淆 15ul        // 无符号长整形字面量 0xfu        // 无符号整型字面量 0xfL        // 长整形字面量 0xful       // 无符号长整型字面量 017u      // 无符号整型字面量  017L      // 长整形字面量 017ul     // 无符号长整型字面量 // limits.h 文件中int, unsigned int, long, unsigned int 取值范围定义 #define INT_MIN (-2147483647 - 1) #define INT_MAX 2147483647 #define UINT_MAX 0xffffffff #define LONG_MIN (-2147483647L - 1) #define LONG_MAX 2147483647L #define ULONG_MAX 0xffffffffUL #include stdio.h #include limits.hint main() {unsigned int uiVar 15u;long longVar 15L;unsigned long ulVar 15ul;printf(%u\n, uiVar); // %u 无符号整型格式化输出printf(%d\n, longVar); // %d 以十进制格式化输出有符号整数在 limits.h 中有定义: long 和 int 的取值范围是一样的printf(%lu\n, ulVar); // %lu 以无符号长整型格式化输出uiVar 0xfu;longVar 0xfL;ulVar 0xful;printf(%u\n, uiVar); // %u 无符号整型格式化输出printf(%d\n, longVar); // %d 以十进制格式化输出有符号整数在 limits.h 中有定义: long 和 int 的取值范围是一样的printf(%lu\n, ulVar); // %lu 以无符号长整型格式化输出uiVar 017u;longVar 017L;ulVar 017ul;printf(%u\n, uiVar); // %u 无符号整型格式化输出printf(%d\n, longVar); // %d 以十进制格式化输出有符号整数在 limits.h 中有定义: long 和 int 的取值范围是一样的printf(%lu\n, ulVar); // %lu 以无符号长整型格式化输出return 0; } 注意 018        是不对的整型字面量因为八进制没有数码 8 15uu      是不对的整型字面量后缀 u 不能重复 15Lu      是正确的整型字面量跟 15uL表达的是同一个字面量u和l组合时不分先后顺序 1.3 浮点字面量 通常用十进制或科学计数法来表示浮点字面量。 默认浮点字面量为 double 类型比如3.14在数值后面加上后缀 f 或 F 表示 float 类型比如3.14f 或 3.14F0 的 double 类型表示为 0. 0 的 float 类型表示为  0.f 或 0.F对于只有小数部分的浮点字面量整数部分的 0 可以省略掉不写比如.01 等价于 0.01.01f 等价于 0.01f使用科学计数法时指数用 e 或 E 表示。比如3.14e0 或 3.14E0 表示的是 double 类型 3.14而 3.14e0f 或 3.14E0F 表示的是 float 类型 3.14fdouble 类型 0 用科学计数法表示为 0e0float 类型 0 用科学计数法表示为 0e0f #include stdio.hint main() {printf(%d, %d\n, sizeof(.01), sizeof(0.01)); // 8, 8printf(%d, %d\n, sizeof(.01f), sizeof(0.01f)); // 4, 4printf(%.2f, %.2f\n, .01, 0.01); // 0.01, 0.01printf(%d, %d\n, sizeof(0.), sizeof(0.f)); // 8, 4printf(%d\n, sizeof(3.14)); // 8printf(%d, %d\n, sizeof(3.14f), sizeof(3.14F)); // 4, 4printf(%d, %d\n, sizeof(3.14e0), sizeof(3.14E0)); // 8, 8printf(%d, %d\n, sizeof(3.14e0f), sizeof(3.14E0F)); // 4, 4printf(%d, %d\n, sizeof(0e0), sizeof(0e0f)); // 8, 4return 0; } 1.4 字符串字面量 字符串字面量用一对双引号把所有的字符括在里面比如Hello World\n 字符串字面量在内存中编译器会自动在末尾加上一个字符串终止符(\0)所以字符串在内存中占用的字节数会比字符串的长度多1字节。两个相邻的仅由空格、制表符(\t) 或 换行符(\n) 分开的字符串字面量可以连接成一个新的字符串字面量。一个字符串过长在一行放不下时可以使用反斜杠 (\) 进行换行。空字符串 在内存在占一个字节这个字节存的是字符串终止符(\0)。 #include stdio.hint main() {printf(Hello World\n); printf(Hello world\n); // 两个字符串字面量连接成一个新的字符串 Hello World\nprintf(Hello \ World\n); // 用 \ 换行printf(%d\n, sizeof()); // 1return 0; } 2. 常量 常量是用预处理器指令 #define 或 const 关键字定义的在程序运行期间不会改变的在代码中有名字的固定值。 2.1 使用预处理器指令 #define 定义常量 2.1.1 语法格式 #define 常量名 常量值 // 以下代码定义了一个名为 PI 的常量 #define PI 3.142.1.2 使用举例 #include stdio.h#define PI 3.14// 圆周长 double circumference(const double r) {return 2 * PI * r; // 使用了预处理器指令 #define 定义的常量 PI }int main() {printf(半径为 %.2f 的圆周长 %.2f\n, 2.0, circumference(2.0));return 0; } 2.2 使用 const 关键字定义常量 2.2.1 语法格式 const 常量类型 常量名 常量值; // 以下代码定义了一个名为 PI 的常量 const double PI 3.14; 2.2.2 使用举例 #include stdio.hconst double PI 3.14;// 圆周长 double circumference(const double r) {return 2 * PI * r; // 使用了用 const 关键字定义的常量 PI }int main() {printf(半径为 %.2f 的圆周长 %.2f\n, 2.0, circumference(2.0));return 0; } 注意用 const 关键字定义的常量必须同时它进行初始化 /* // 以下对定义常量 MAX 是错误的因为常量必须在定义的时同时对它进行初始化初始化后的常量是不能改变的 const int MAX; MAX 100; */ // 正确用 const 定义 MAX 常量的方法 const int MAX 100; 2.3 使用 #define 和 const 定义常量的区别 1. 编译器处理方式不同使用 #define 定义的常量会在预处理阶段用它对应的字面量替换掉代码中的常量字符标识在程序运行期间内存中并不存在该常量。使用 const 定义的常量是具有数据类型和作用域的常量在程序运行期间内存中是存在该常量的符号标识的 2. 类型和安全检查不同 使用 #define 定义的常量不存在数据类型从而在编译阶段编译器不会对它进行类型检查 使用 const 定义的常量是具有数据类型的在编译阶段编译器会对它进行类型检查 3. 作用域检查不同 使用 #define 定义的常量没有作用域它在定义之后的整个代码中都有效 使用 const 定义的常量具有作用域只有在它所在的作用域内有效 4. 存储方式不同 使用 #define 定义的常量在符号表中不会有相应的条目。 使用 const 定义的常量会在符号表中有相应的条目有助于调试和可读性。 使用 #define 与 const 这两种方式都可以用来定义常量通常情况下建议使用 const 关键字来定义常量因为通过 const 关键字定义的常量具有数据类型和作用域编译器可以对它进行类型检测和作用域检查而用 #define 定义的常量仅在预编译阶段进行简单的文本替换可能会导致一些没有预料到的问题。
http://www.dnsts.com.cn/news/49550.html

相关文章:

  • asp网站没有数据库连接排名优化seo公司
  • 网站友情链接怎么弄建设银行网站如何下载u盾
  • 网站运营托管方案wordpress jetpack插件
  • 专做五金正品的网站龙华线上推广
  • python做公司网站网站里面的数据库是怎么做的
  • 公司网站内容模块布局网页制作与网站建设问答题
  • 网站建设模板设计软硬件开发公司
  • 游戏直播网站怎么做的重庆seo推广渠道
  • 学习aspmvc网站开发 书页面设计感想
  • 网站建设四个步骤陕西省工程建设交易服务中心网站
  • dw做的网站怎么发布做营销型网站价格
  • 枣庄网站制作公司怎么换自己的网站服务器
  • 做系统后之前网站怎么找回买了域名就可以做网站
  • 网站需要服务器厦门网页设计培训
  • 中国旅游预订网站的建设始于哪一年安琪oa协同办公系统
  • 网站建设培训 ppt公司设计网站有哪些
  • 自助建站系统网站本科
  • thinkphp 网站设置功能云浮营销建站公司
  • 珠海新盈科技有限公司 网站建设wordpress文章页面宽度
  • 网站建设推广顾问是什么意思网页设计与网站建设课后习题答案
  • 信诺盛世网站wordpress看图插件
  • t型布局网站怎么做痘痘怎么去除有效果
  • 浪潮做网站建设吗网站商城建设合同
  • 网站开发流程有哪几个阶段嘉纪商正网站建设公司
  • 专做电器的网站重庆网站推广付费
  • 最好的网站设计公司动画制作平台
  • 沧州网站建设的集成商软件技术外包
  • 南沙外贸网站建设网站建设怎样创建链接
  • 外贸做的好的网站公司注册查询网站
  • 一个网站两个域名吗西安网站 技术支持牛商网