C++ Review
#include "iostream"
#include "iomanip"
#include "cstdio"
using namespace std;
int main()
{
///Type conversion and casts 类型的转换和强转
///char<short<int<=long<float<double 字节大小 占用存储空间上升
///C++输入输出
///Manipulator流操纵符 设定输出流格式
///setw()宽度setfill()填充字符setprecision()数据域位数fixed()小数点数
int a=;
cout<<"without setw():"<<a<<endl;
cout<<"with setw():"<<setw()<<a<<endl;///过宽 左补空格,过窄原样输出,无后效性
cout<<setw()<<setfill('#')<<a<<endl;
cout<<left<<setw()<<setfill('#')<<a<<endl;///数左靠齐 默认右靠齐
double b=12300.44678;
cout<<"without setprecision():"<<b<<endl;///默认数据显示的最大位数为6 4四舍五入
cout<<setprecision()<<b<<endl;
cout<<fixed<<setprecision()<<b<<endl;///设置小数位数 按定点小数非科学计数法 有后效性 ///单个字符的输入输出
char c;
cin>>c;///默认cin忽略空白字符
///需要从键盘读入单个字符,不管其空白与否,,使用流操纵符noskipws
//cin>>noskipws>>c;
//cin.get(c);///或者 也读
cout.put(c); cout<<"++66"<<endl;
char d;
cin>>d;
cout<<"d"<<d<<endl;
switch(d)
{
case '+': cout<<"++++"<<endl; break;
case '-':cout<<"----"<<endl;break;
case '*':cout<<"****"<<endl;break;
case '/':cout<<"////"<<endl;break;
} }
#include "cstdlib"
#include "cstring"
#include "string"
int main()
{
///字符串
///cin同scanf不读入空格(空格当做分隔符结束)
///cin.getline(数组名,最大读入字符数,结束符);读入一行 同gets()
///注意回车读入,用cin.get(dummy) /cin.ignore(80,'\n');/getchar();
///最多忽略80个字符,忽略遇到回车结束避免 ///C-style
char c_string[]="sharon";
char c_string1[];
int len=strlen(c_string);
/*strcpy(name1,name);///将name中字符串复制到name1
strcat(name,name1);
strcmp(name,name1);*/
///strncpy(str1,str2,n);前n个strncat(str1,str2,n);strncmp(str1,str2,n);
char str1[]="123.3";
int strI=atoi(str1);
int strL=atol(str1);
double strD=atof(str1);
cout<<strI<<endl;
cout<<strD<<endl; ///C++-style
///赋值与初始化
string str11="abcdefg";
string str12(,'-');
string str13=str12;
str12.assign(,'.');
str12.assign(str11,,);///复制对象,从下标几开始,复制几个
str12.swap(str11);///交换 ///连接
str11=str12+str13;
str13+="ect";
str13.append(".ect");
str13.append(str11,,);///添加对象,从下标为几开始,后延几个 ///访问
str11[]=str11[str11.length()-];
str11.at()='*';///与[]不同,.at()进行越界检查
str11.substr(,);///从下标0开始,后延几个的字串 ///替代 擦除 插入
str11.replace(,,str12,,);///将str11的下标为234(后延3位)的字串
///替换为str12 下标为2345的字串
str11.replace(,,str12); str11.erase();///擦除下标9之后所有,包括9
str11.erase(,);///擦除下标为4,5的字符
str11.erase();///全擦 if(str11.empty()){
str11.insert(,str12,,);///插到索引位置4前面
}
str11.insert(,str12);///全插 int p=str11.find("abc");///从左向右找 存在返回下标,不存在返回-1
str11.rfind("abc");///查找最后一次abc位置
p=str11.find_first_of("abc");///返回第一次出现a,b,or c的下标,否则返回-1
p=str11.find_last_of("abc");///最后一次出现
p=str11.find_first_not_of("abc");
p=str11.find_last_not_of("abc"); ///输入
getline(cin,str11,'\n');///遇到回车读入结束
cin>>str11;///不读空格
getline(cin,str11);///读取一行 ///C C++字符串相互转换 string cpp_string="abcdef";
char c_string[];
///C++->C
int len =cpp_string.length();
cpp_string.copy(c_string,len);///len表示多少字符//此命令不拷贝'\0'
c_string[len]='\0';
cpp_string.copy(c_string,,);///转换字串
c_string[]='\0'; strcpy(c_string,cpp_string.c_str());///无须考虑大小 ///C->C++
cpp_string=c_string;
}
C++ Review的更多相关文章
- 我们是怎么做Code Review的
前几天看了<Code Review 程序员的寄望与哀伤>,想到我们团队开展Code Review也有2年了,结果还算比较满意,有些经验应该可以和大家一起分享.探讨.我们为什么要推行Code ...
- Code Review 程序员的寄望与哀伤
一个程序员,他写完了代码,在测试环境通过了测试,然后他把它发布到了线上生产环境,但很快就发现在生产环境上出了问题,有潜在的 bug. 事后分析,是生产环境的一些微妙差异,使得这种 bug 场景在线下测 ...
- AutoMapper:Unmapped members were found. Review the types and members below. Add a custom mapping expression, ignore, add a custom resolver, or modify the source/destination type
异常处理汇总-后端系列 http://www.cnblogs.com/dunitian/p/4523006.html 应用场景:ViewModel==>Mode映射的时候出错 AutoMappe ...
- Git和Code Review流程
Code Review流程1.根据开发任务,建立git分支, 分支名称模式为feature/任务名,比如关于API相关的一项任务,建立分支feature/api.git checkout -b fea ...
- 故障review的一些总结
故障review的一些总结 故障review的目的 归纳出现故障产生的原因 检查故障的产生是否具有普遍性,并尽可能的保证同类问题不在出现, 回顾故障的处理流程,并检查处理过程中所存在的问题.并确定此类 ...
- review简历之感想和建议
最近帮很多朋友review他们的简历,总结起来存在以下问题: 1,简历太多页了.请尽量不超过两页.一般地,每个hr阅读简历的时间大概在20s甚至更少,写那么多页不仅毫无必要,而且有害. 而且我怀疑一般 ...
- Plant Design Review Based on AnyCAD
Plant Design Review Based on AnyCAD eryar@163.com Abstract. AVEVA Review is used to 3D model visuali ...
- git review & devops过程
自己搭建的devops环境是gitlab/gerrit/jenkins 1. 首先自己checkout一个自己的代码分支,一般不要在master上做直接修改 2. 修改后git add file, ...
- 自动提交Git branch代码评审到Review Board系统
背景 敏捷软件开发中,越小的反馈环,意味着软件质量越容易得到保证. 作为组件团队,我们的开发任务中,往往存在一些特性涉及到几十个功能点,开发周期持续数周或数月的情况.如何在开发过程中保证软件质量,是个 ...
- 如何搭建开源code review gerrit服务器
搭建环境:Ubuntu 14.04 一.环境准备 1.Java环境 gerrit依赖,用于安装gerrit环境. 下载:jdk-7u79-linux-x64.tar.gz http://www.ora ...
随机推荐
- 失败的尝试,使用继承扩展数组,以及ES6的必要性
我们都知道直接在原生对象上扩展对象是很不好的.所以prototype这样的库广受非议. 一些库,比如lodash采用了工具包形式的扩展方式,绕开了对象的继承. 由于es6的class的出现,我尝试以A ...
- 原生js实现五子棋
为什突然做这个,因为这是个笔试题,拖了一个月才写(最近终于闲了O(∩_∩)O),废话不多说,说说这个题吧 题目要求 编写一个单机[五子棋]游戏,要求如下: 1.使用原生技术实现,兼容 Chrome 浏 ...
- 关于ArrayList add()方法 中的引用问题
ArrayList的add方法每次添加一个对象时,添加 的是一个对象的引用,比如进行循环操作10次 lists.add(a) 每次 a会改变 ,这时候你会发现你在lists里添加了10个相同的对象a ...
- Ubuntu16.04安装Zabbix
基于Zabbix+MySQL+Apache(可选) apt-get install php7.0-bcmath php7.0-xml php7.0-mbstring安装Zabbix所需的几个PHP模块 ...
- Selenium八大元素定位方式
1.根据id来定位: import org.openqa.selenium.By;import org.openqa.selenium.WebDriver;import org.openqa.sele ...
- C#非托管跨线程委托调试
使用C#调用mingw的so文件,拿视频数据回wpf的界面进行显示,注册了回调函数.C++在调用回调函数时遇到了委托被回收的问题,提示:“类型的已垃圾回收委托进行了回调.这可能会导致应用程序崩溃.损坏 ...
- node + npm 命令
npm install npm@latest -g //更新npm npm -v //运行查看版本号 地址:https://docs.npmjs.com/getting-started/insta ...
- python进制转换(二进制、十进制和十六进制)及注意事项
使用内置函数实现进制转换实现比较简单,主要用到以下函数: bin().oct().int().hex() 下面分别详解一下各个函数的使用(附实例) 第一部分:其他进制转十进制 1.二进制转十进制 使用 ...
- Mininet简单性能测试
建一个简单的模型,使用一个单交换机,然后链接n个主机形成拓扑,然后对每个链路设置带宽,延迟时间,和丢包率. 这里就选择建一个单交换机和六个主机的作为例子. 创建py脚本生成拓扑:写一个类生成一个单交换 ...
- lintcode-125-背包问题 II
125-背包问题 II 给出n个物品的体积A[i]和其价值V[i],将他们装入一个大小为m的背包,最多能装入的总价值有多大? 注意事项 A[i], V[i], n, m均为整数.你不能将物品进行切分. ...