C++菜鸟常见错误整理(第二天)_all_nines-程序员宅基地

技术标签: C++  常见错误  基础  

     本人目前还是学生,能力有限,有不足或者错误的地方欢迎大家指正,谢谢大家!

1、强制类型转换

     (int)((double)9/2)-1即double 9,把9转换成double,然后/2,然后-1,最后强制转换成int

2、关于switch循环

     int k=1,c=0;  switch(k)  {default:c+=k;  case 2:c++;break;  }由于default后面没有break,所以执行完c+=k后,继续执行c++,然后break跳出。swich循环经常忽略break,直接执

行完c+=k就跳出了。

3、赋值优先级很低

       k=a>b?(b>c?1:0):0;先执行(b>c?1:0),然后a>b?(b>c?1:0):0,最后赋值

4、char初始化

    char a='/n' 用ASCII或转义符都可以赋值,但是char a='aa';是把字符串赋值给了char,错误

5、while循环

    int n=2,k=0;while(k++&&n++>2);cot<<k;while循环里,k先使用后自增,k=0,不否和条件,所以&&后面不执行,但k自增成1了,所以k=1,n=2

6、 C++ 关键字
     asm do if return try auto double inline short typedef bool dynamic_cast int signed typeid break else long sizeof typename case enum mutable static union catch explicit namespace static_cast unsigned char export new struct using class extern operator switch virtual const false private template void const_cast float protected this volatile
continue for public throw wchar_t default friend register true while delete goto reinterpret_cast

7、string all_nines(10, '9'); // all_nines= "9999999999"

8、枚举enum

    enum Forms {shape = 1, sphere, cylinder=5, polygon};默认后面比前面的大1,即shape = 1, sphere=2, cylinder=5, polygon=6。

9、类成员

    当定义数据成员时,只能指定该数据成员的名字和类型,不能初始化。默认情况下,struct 的成员为 public,而 class 的成员为 private。类通常被被放在头文件中使用。

设计头文件时,记住定义和声明的区别是很重要的。定义只可以出现一次,而声明则可以出现多次。

    今天就到这里,有不足的地方还请指正,谢谢大家!

 

 

 

 

 

 

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/u010229677/article/details/8999635

智能推荐

调试此项目,请在此求解方案中添加一个引用库项目的可执行项目,将这个可执行项目设置为启动项_若要调试此项目,请向引用库选项-程序员宅基地

文章浏览阅读5.2k次。右键项目,先通过属性查看项目生成类型是类库还是应用程序对要应用程序的项目生成依赖项,即依赖于类库项目并且将生成应用程序的项目设为启动项目..._若要调试此项目,请向引用库选项

PTA L1-005 考试座位号_个 pat 考生在参加考试时都会被分配两个座位号,一个是试机座位,一个是考试座-程序员宅基地

文章浏览阅读466次。每个 PAT 考生在参加考试时都会被分配两个座位号,一个是试机座位,一个是考试座位。正常情况下,考生在入场时先得到试机座位号码,入座进入试机状态后,系统会显示该考生的考试座位号码,考试时考生需要换到考试座位就座。但有些考生迟到了,试机已经结束,他们只能拿着领到的试机座位号码求助于你,从后台查出他们的考试座位号码。输入格式:输入第一行给出一个正整数 N(≤1000),随后 N 行,每行给出一个考..._个 pat 考生在参加考试时都会被分配两个座位号,一个是试机座位,一个是考试座

Android 使用 HTTP 访问网络_android nng code http-程序员宅基地

文章浏览阅读4.7k次。使用 HttpURLConnection在过去,Android 上发送 HTTP 请求一般有两种方式:HttpURLConnection 和 HttpClient,不过在 Android 6.0 系统中,HttpClient 被完全移除了,因此推荐使用 HttpURLConnection// 创建一个 URL 对象,并传入目标网络地址val url = URL("https://www.baidu.com")// 调用 openConnection() 方法即可获取 HttpURLConnecti._android nng code http

移动端开发touchmove事件preventDefault引发页面不能滚动问题_touchmove上拉无法滚动-程序员宅基地

文章浏览阅读9.7k次。项目中,用到了一个可在页面中的拖拽小图标,由于拖动过程中不能引发页面的拖动@touchmove事件对应函数中加入: document.addEventListener("touchmove",this.preventDefault,false); preventDefault(e) { e.preventDefault(); }但实际拖动之后,发现长页面上下也无法拖动..._touchmove上拉无法滚动

JAVA常见的运行时异常-程序员宅基地

文章浏览阅读1.9k次,点赞3次,收藏2次。一般面试中java Exception(runtimeException )是必会被问到的问题常见的异常列出四五种,是基本要求。更多的。。。。需要注意积累了 常见的几种如下: NullPointerException - 空指针引用异常ClassCastException - 类型强制转换异常。IllegalArgumentException - 传递非法参数异常。ArithmeticExcept..._常见的运行时异常

asterisk queue.conf 配置文件中文详解_asterisk 16 配置queue-程序员宅基地

文章浏览阅读8.2k次。asterisk queue.conf queue_asterisk 16 配置queue

随便推点

【C1】JavaScript是什么_scriptease c---程序员宅基地

文章浏览阅读383次。1997年,JavaScript1.1被作为草案提交给欧洲计算机制造协会(ECMA),来自Netscape、Sun、Microsoft等其他对脚本编程感兴趣的公司的程序员组成的第39技术委员会(TC39)被委派去“标准化一个通用、跨平台、中立于厂商的脚本语言的语法和语义”,标准化的最终成果为ECMA-262,该标准定义了叫做ECMAScript的全新脚本语言。_scriptease c--

swiper轮播border-radius滑动时变直角问题_swiper slider border-radius-程序员宅基地

文章浏览阅读2.6k次,点赞4次,收藏2次。要给轮播图设置圆角,不滚动的时候还好,一但滚动圆角就无效了。注意4个角注意4个角一开始我以为是border-radius属性设置错地方了。于是就全部给他们加上试了一试。WXML:<swiper indicator-dots="true" autoplay="true" interval="1600" duration="1000" circular="true" in..._swiper slider border-radius

编程练习-程序员宅基地

文章浏览阅读190次。求助帖!!! 真的。。不会做。。。

T1与T3定时器的使用_t1t3定时器控制两个灯程序-程序员宅基地

文章浏览阅读4.6k次,点赞2次,收藏10次。一、T1定时器#include#define uint unsigned int#define uchar unsigned char#define LED P1_0#define LED1 P1_1uint counter = 0;//统计溢出次数uint LEDFlag;//标志是否要闪烁uint fen = 0;_t1t3定时器控制两个灯程序

python basemap 画出经纬度并标定_drawmeridians-程序员宅基地

文章浏览阅读1.6w次,点赞2次,收藏17次。原网页:http://matplotlib.org/basemap/users/graticule.html两个函数:Basemap.drawparallels ##纬度 Basemap.drawmeridians ##经度from mpl_toolkits.basemap import Basemapimport matplotlib.pyplot as plt..._drawmeridians

高精度加法和乘法的c++实现_c++多个高精度相乘后相加-程序员宅基地

文章浏览阅读5.2k次,点赞3次,收藏6次。上一篇用c写了高精度加法的计算,总的来说,从底层写起的话,对于不是很繁琐的代码,面向过程还是比较方便的。但是当我打算计算高精度乘法的时候,发现计算过程要比加法麻烦的多,而且会反复用到一些函数的调用,而且这里面还会用到高精度加法的计算,于是果断放弃的c,采用c++。这里,我写了一个类,名为megaData,就是指一个很大的数(不过这个单词好像是指大数据,完全不懂大数据是什么,反正就这么命_c++多个高精度相乘后相加