github上的每日学习 3

一、 一些的与C语言的区别

1、 在C++中,数据类型的字节长度并没有规定,只有规定不同的数据类型的字节长度的大小关系。
2、 字符串类型的表示方法:一个是运用的字符数组来存储字符,这叫做C风格的字符串,另一种是C++风格的字符串,这是应用C++类库中的String类。
3、 一个初始化的格式,从来没有用到的,不知道这是不是C++的区别之处:

int a(3);
int a={3};//这种情况下是列表初始化,不允许数据丢失,这就是比如说,用3.1415来初始化一个int的变量时,会造成数据丢失,这就是一个例子。

二、 常量const的格式,及应用

格式:

	const 数据类型说明符 常量名=常量值;

	数据类型说明符 const 常量名=常量值;

图片如下:

这里说明这程序运行的过程中不允许更改的呀!
还有,必须初始化,不初始化会报错的啊!

三、 string类的学习

相当于一个封装起来的字符数组!!听说超级好用的呢!!而且不用考虑下标越界!!不用考虑长度的问题!!
而且有一个超级好的地方,不用引用函数,直接用+作为连接,><==作比较,=作为赋值!!
具体如下:

#include<iostream>
using namespace std;
inline void test(const char* title, bool value)
{
	cout << title << "return:" << (value ? "true" : "false") << endl;

}
int main()
{
	inline void test(const char* title, bool value);


	string s1 = "DEF";
	cout << "s1 is " << s1 << endl;
	string s2;//这里默认长度为零,但是!!这里会自己变化的,好像是这么理解的啦!
		cout << "Please ebter s2:";
	cin >> s2;
	cout << "length of s2:" << s2.length() << endl;
	//比较运算符的test:
	test("s1<=ABC", s1 <= "ABC");
	test("DEF<=s1","DEF"<=s1);
	//连接运算符的test:
	s2 += s1;
	cout << "s2=s2+s1:" << s2 << endl;
	cout << "length of s2:" << s2.length() << endl;
	return 0;
}

四、 getline函数的练习

getline的使用格式
getline(cin,string类型的变量名,什么字符为止);
特别指出,需要用头文件
#include<string>;
如果没有指出到什么字符为止,那么默认换行符为止;
练习代码:

#include<string>
using namespace std;
int main()
{
	
	for (int i = 0; i < 2; i++) {
		string city, state;
		getline(cin,city, ',');
		getline(cin,state);
		cout << "city:" << city<<endl << "state:" << state;
	}
}

posted @ 2020-01-31 20:26  zouzouy  阅读(161)  评论(0编辑  收藏  举报