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

泊头网站排名优化最新装修设计效果图大全

泊头网站排名优化,最新装修设计效果图大全,建设品牌型网站制作,即时设计app下载大家好#xff0c;我是Dark Fire#xff0c;终于进入了C的学习#xff0c;我知道面对我的将是什么#xff0c;就算变成秃头佬#xff0c;也要把C学好#xff0c;今天是C入门第一篇#xff0c;我会尽全力将知识以清晰易懂的方式表达出#xff0c;希望我们一起加油#… 大家好我是Dark Fire终于进入了C的学习我知道面对我的将是什么就算变成秃头佬也要把C学好今天是C入门第一篇我会尽全力将知识以清晰易懂的方式表达出希望我们一起加油 文章目录 一C中的关键字C输入与输出命名空间命名空间的定义使用命名空间 auto关键字 一C中的关键字 首先和C语言不同的是,C又增加了一些关键字相对于C语言32个关键字C63个关键字象征着C语言会更加灵活多变。由于C是本贾尼博士在C语言的基础上改进而来所以C的关键字大部分还是C语言里的。 红色为C语言已经存在的黑色为C扩展的。  由于这里关键字太多用例讲解反而记忆不会深刻所以在之后的章节里会结合一些例子帮助大家来理解和掌握这些关键字的使用场景和注意事项。 C输入与输出 在C语言中我们常常用printf和scanf进行读和写的功能在C中更换了输入和输出的方法在C语言中只能对特定种类的数据进行输入和输出功能而在C中可以实现类变量的输入和输出具体会在后边进行讲解。 在C中包含头文件以及ing名空间的使用方法std。iostream就是i,o流的意思数据从哪里流向哪里。cout和cin是在命名空间中所定义的所以在使用时要打开命名空间下边会讲到。 使用cout标准输出对象控制台和cin默认输入对象键盘进行输入和输出。 cout用例如下  这里是流插入运算符至于是流提取运算符endl是打印后换行的意思和C语言中的\n作用相同。 这段代码的意思是将i变量的值流入标准输出对象即控制台。 cin用例如下 默认a的值为0输入4后将a的值更改为4。  你一定会有疑问那么这些变量是如何被识别他们是什么类型的呢 实际上C的输入和输出可以自动识别变量类型。交给编译器让他自己识别 用例如下 是不是超级方便。 在后边的学习中你才会意识到什么是真正的方便。 关于cout和cin还有很多复杂的用法比如控制浮点数输出精度控制整形输出格式等后续如果需要用到我们在进行讲解而且C是兼容C语言的这些问题也可以由C语言的转义字符进行操作就不展开讨论。 命名空间 当我们在用C语言进行编程时常常会出现这样的问题。 #include time.h int time 0; int main() {printf(%d , time);return 0; }当我们包含了头文件time.h时创建全局变量time打印time发现报错如下。 和头文件中的同名变量产生冲突我们就不得不改变我们创建的变量名。 这种情况经常发生而且我们命名过一个变量一个名字之后在该作用域中这个变量名就不能再重复使用了而且在后边函数变量以及创造出来的类是大量存在的如果将这些变量都存于全局作用域中势必会出现很多错误如何避免呢 namespace关键字就是针对这一问题存在的。 使用命名空间可以对标识符的名称进行本地化以避免命名冲突或名字污染。 命名空间的定义 关键字namespace后边跟命名空间的名字然后接一对大括号即可{}内部便是命名空间中的成员。 用例如下 namespace Dark {int time 0;int Add(int x, int y){return x y;}struct Node{struct Node* next;int val;}; }命名空间中不仅可以有变量还可以有函数自定义类型等。 当然命名空间还可以嵌套 namespace Dark {int time 0;int Add(int x, int y){return x y;}struct Node{struct Node* next;int val;};namespace Fire{int rand 0;int Sub(int x, int y){return x - y;}} }一个命名空间就限制了一个新的作用域命名空间内的所有内容都局限于此命名空间内。 使用命名空间 命名空间内部元素使用有以下三种方法 1命名空间及其作用域限定符 int main() {cout Dark::time endl;return 0; }2使用using将命名空间中的某个元素引入 int main() {using Dark::time;cout time endl;return 0; }3使用using space 加命名空间名称将命名空间引入就像前边所说std命名空间的引入一样。 int main() {using namespace Dark;cout Fire::rand endl;return 0; }引入后就可以直接访问内部的命名空间啦。 访问嵌套的命名空间可以用上边的方法深度挖掘。 就像这样 int main() {cout Dark::Fire::rand endl;return 0; }是不是已经十分了解啦。 auto关键字 在C中随着程序越来越复杂程序中用到的类型也越来越复杂一层一层的嵌套让类型难于拼写含义不明确就容易拼写错误。auto就是来解决这一问题的。 比如这个例子举例说明细节后边会讲 #include string #include map int main() {std::mapstd::string, std::stringm{ {aaa,aaaa},{bbb,bbbb},{ccc,cccc} };std::mapstd::string, std::string::iterator it m.begin();return 0; } 有些数据类型很长很多聪明的友友会考虑用typedef取别名。 #include string #include map typedef std::mapstd::string, std::string Map; int main() {Map m{ {aaa,aaaa},{bbb,bbbb},{ccc,cccc} };Map::iterator it m.begin();return 0; }然而在某些情况下typedef不能解决这些问题。 例如 在C11中标准委员会赋予了auto全新的含义auto不再是一个存储类型指示符而是作为一个新的类型来指示编译器auto声明的变量必须由编译器在编译时期推导而得。 auto可以自动推导数据的类型。 typeid函数可以知道变量的类型。 注意  使用auto定义变量时必须要将其初始化在编译阶段编译器需要根据其初始化表达式来推导auto的实际类型因此auto并非是一种类型的声明而是类型的占位符编译器在编译期间会将auto替换为变量实际的类型。  可以发现我们将数据类型的确定让编译器确认了而不是主动传递%d %f之类的标识符。 auto的使用 1auto与指针和引用结合起来使用  用auto声明指针类型时用auto和auto没有任何区别加上后auto推导的就是指针类型不加时推导的就是指针类型加 *。 但是用auto声明引用时必须加上不然编译器也不知道你是不是引用。 用例如下 2在同一行定义多个变量  当在同一行声明多个变量时这些变量必须是相同的类型否则编译器会报错因为编译器只会对第一个类型进行推导然后用推导出的类型定义这行后边的类型。 auto这么厉害但也有不可推到的场景 1auto不能作为函数的参数 auto不能推导出形参的实际类型有可能会造成二义性所以编译失败。 2auto不能直接声明数组 auto常见的用法 最常见的优势用法就是新式for循环还有lambda表达式进行配合使用后边会讲 范围for的用法 在C98如果想遍历一个数组 void TestFor() {int array[] { 1,2,3,4,5 };for (int i 0; i sizeof(array) / sizeof(array[0]); i){array[i] * 2;}for (int*parray; p array sizeof(array) / sizeof(array[0]); p){cout *p endl;} }遍历数组各个元素都乘以2然后借助下标进行打印。  在C11中对于一个有范围的集合对程序员来说循环的范围是多余的这件事我们也可以甩给编译器。 for循环后的括号由“”分为两部分第一部分是范围内用于迭代的变量第二部分则是被迭代的范围。 用例如下 void TestFor() {int array[] { 1,2,3,4,5 };for (auto e : array){e * 2;}for (auto e : array){cout e endl;} }在这里e是被引用的array里的每个元素auto可以自动识别变量的类型与普通循环类型这里也可以用continue结束某次循环也可以使用break跳出循环。 for循环迭代的范围必须是确定的对于数组而言就是第一个元素到最后一个元素的范围。 今天就介绍到这里啦如果有问题欢迎友友们指出哦。
http://www.ho-use.cn/article/10817645.html

相关文章:

  • 网站建设先买主机还是天津市武清区住房建设网站
  • 个人建站什么网站好淘宝商城网站建设
  • 连江福州网站建设深圳建网站三千
  • 如何知道别人的网站流量来自于哪里wordpress 跳转 微信
  • 设计网站最重要的是要有良好的无备案网站广告如何做
  • 开网站做网站seo入门黑帽培训教程
  • 怎么申请信用卡收款网站接口海报在线生成
  • 沈阳网站设计价格哈尔滨h5建站模板
  • 电子商务网站建设 课件某某公司网络营销策划书
  • 网站项目综合设计作业 代做做网站买服务器怎么样
  • 做网站推广汉狮网络百度智能建站适合优化吗
  • 网站如何盈利福建网站开发企业
  • 贷款网站织梦模板源码交互式网站开发技术有哪些
  • iis7添加php网站页面设计作品
  • 县电子政务办网站建设工作思路图片做视频在线观看网站
  • 海外仓网站建设怎么做网页会议邀请函
  • 湘潭学校网站建设 磐石网络第一怎么做自己的cpa网站
  • 可以建微信网站的深圳福田最新消息今天
  • 做的最好自考网站是哪个球类网站如何做宣传
  • 网站域名维护wordpress主题怎么改
  • 网站设计器wordpress为文章添加下载按钮
  • 网站ns记录个人备案网站做app
  • 浙江省建设会计协会网站泾阳县建设局网站
  • 营销型网站建设公司哪家好邯郸企业网站建设
  • 交易所网站开发实战重庆工商大学
  • 衡水网站建设浩森宇特视觉设计师前景
  • 大连企业网站建设模板宁波网站推广怎么做
  • 潍坊高端网站建设价格西安seo平台
  • 外贸建站及推广成都做小程序的开发公司
  • 网站建设征集通讯员的通知郑州网络营销网站优化