1.scanf读入字符时,要在输入控制符%c前面加空格
2.c的原生函数容易出问题,
遇到的问题:用printf输出拼接后的字符串,输出乱码
解决办法:eg:要输出string road,printf语句改为printf("%s",road.c_str());
看法:尽量不用printf输出字符串
3.提高cin、cout速度,用语句
cin.tie(false),ios::sync_with_stdio(0);
看法:待验证
4.用freopen等函数,对文件进行输入输出操作,见如下连接:
(110条消息) freopen函数详解_lyj2014211626的博客-优快云博客_freopen返回值
5. cin和getline函数的对比,见如下连接:
(110条消息) c++中的cin和getline()函数两种用法详解_向心以履的博客-优快云博客_getline(cin,s)函数用法
简单小结:
cin 逐字符读取,不读空格,不读回车
getline 逐行读取,读空格,读回车(注:用cin读完数据,想再用getline读数据时,在正式读数据之前,先用getline读一次清回车)
6.从字符串中读取数据
头文件:#include<sstream>
代码:
int a[n];
string line;
getline(cin,line);
stringstream ssin(line);//相当于可以用ssin替换cin了
while(ssin>>a[n]) n++;
7.从字符串中读取指定格式的数据
头文件:#include<cstdio>
用法:见如下链接
(112条消息) sscanf函数使用详解_faihung的博客-优快云博客_sscanf
8.c_str()方法
(1)c_str是一个内容为字符串指向字符数组的临时指针;//不能对其进行操作
(2)c_str返回的是一个可读不可改的常指针;//有些函数要求char*参数,可以使用c_str()方法
具体介绍见如下链接:
(112条消息) C++中的c_str()函数用法_繁星蓝雨的博客-优快云博客_c_str
9.sprintf函数
功能:把格式化的数据写入某个字符串中
用法:
char str[20];
double f=14.309948;
sprintf(str,"%6.2f",f);