C++学习笔记(杂)
2015-10-15 14:40
232 查看
花了一个礼拜多把PAT Basic Level的题全刷完了,之前只有C的基础,刚开始接触C++,刷题过程中遇到了一些小问题,记录一下。
1. 用cin来输入时,是自动以空格或回车来分割的,要读入空格,需要使用getline(cin, 变量名)。
2. 输出格式控制:
要使输出的位数固定为n,左端补领时,可以用cout<<setw(n)<<setfill('0')<<x。
要使输出的小数位数固定为n,可以用cout<<fixed<<setprecision(n)<<x。
3.sort的用法为sort(begin,end,cmp),可以自定义cmp实现不同的排序要求。
4.大量输出时,用C中的printf速度更快,用cin则可能会超时。
5. C++中string类型与int,float等进行转换时,有几种方法:
单个字符转为int时,可以简单用c-‘0’,int转为char也可以用n+’0‘。
可以用stringstream来转化,这种方法还能配合setfill,和setw来控制格式,stringstream还能自动分割空格。
可以用sprintf,用法如:sprintf(s, "%d", 123); //产生"123"
用itoa,atoi等函数,需要头文件stdlib.h,另外注意string转为int时要这样:n=atoi(s.c_str()),c_str()转化为char*的格式。
直接用(int)(char)(float)等,但要注意cout<<(int)'a';输出的是97.
1. 用cin来输入时,是自动以空格或回车来分割的,要读入空格,需要使用getline(cin, 变量名)。
2. 输出格式控制:
要使输出的位数固定为n,左端补领时,可以用cout<<setw(n)<<setfill('0')<<x。
要使输出的小数位数固定为n,可以用cout<<fixed<<setprecision(n)<<x。
3.sort的用法为sort(begin,end,cmp),可以自定义cmp实现不同的排序要求。
4.大量输出时,用C中的printf速度更快,用cin则可能会超时。
5. C++中string类型与int,float等进行转换时,有几种方法:
单个字符转为int时,可以简单用c-‘0’,int转为char也可以用n+’0‘。
可以用stringstream来转化,这种方法还能配合setfill,和setw来控制格式,stringstream还能自动分割空格。
可以用sprintf,用法如:sprintf(s, "%d", 123); //产生"123"
用itoa,atoi等函数,需要头文件stdlib.h,另外注意string转为int时要这样:n=atoi(s.c_str()),c_str()转化为char*的格式。
直接用(int)(char)(float)等,但要注意cout<<(int)'a';输出的是97.
相关文章推荐
- libdvbpsi源码分析(四)PAT表解析/重建
- PAT配置
- 什么是端口复用动态地址转换(PAT) 介绍配置实例
- MikroTik layer7-protocol
- PAT是如何工作的
- PAT 乙级题:1002. 写出这个数 (20)
- PAT (Advanced Level) Practise 1001-1010
- 数据结构学习与实验指导(一)
- PAT Basic Level 1001-1010解题报告
- 1001. 害死人不偿命的(3n+1)猜想
- 1002. 写出这个数
- 1032. 挖掘机技术哪家强
- 1001. 害死人不偿命的(3n+1)猜想 (PAT basic)
- 1002. 写出这个数(PAT Basic)
- 1004. 成绩排名(PAT Basic)
- 1006. 换个格式输出整数(PAT Basic)
- 1007. 素数对猜想(PAT Basic)
- 1008. 数组元素循环右移问题
- 1009. 说反话(PAT Basic)
- 1011. A+B和C(PAT Basic)