您的位置:首页 > 编程语言 > C语言/C++

纸上谈兵(C++):字符串的使用

2014-02-25 22:42 239 查看
今天是我学习C++的第一天,很高兴能和大家分享点什么;其实,也谈不上什么分享,只是看了前人的例子,加上自己的理解,把它记录下来;对于理工科的知识,一般书上讲的比较抽象,难以理解,需要我们去实验来证明书上的知识;这样我们才可以理解的更加深刻,废话不多说了,下面直接进入主题,贴出今天学习的·代码,并对它进行讲解;

#include <iostream>
#include<string>
int main()
{
	std::string name;  //定义一个字符型变量

	std::cout<<"please input your name"<<std::endl;
	std::cin >>name;   //输入名字

	const std::string greeting="Hello,"+name+"!"; //用+连接字符串,+的重载
	const std::string spaces (greeting.size(),' ');
	const std::string second="*"+spaces+"*";
	const std::string first(second.size(),'*');

	std::cout<<first<<std::endl;
	std::cout<<second<<std::endl;
	std::cout<<"*"<<greeting<<"*"<<std::endl;
	std::cout<<second<<std::endl;
	std::cout<<first<<std::endl;
	return 0;
}


上述代码的运行结果:对问候语加了一个边框;



1.名称空间:是一组相关名称的集合;

std::cout表明cout一个名为std的名称空间的一部分,::是作用域运算符,::左边为一个作用域的名称,此处,这个名称是一个名为std的名称空间。::右边也是一个名称,这个名称在左边命名的作用域中定义的。在作用std中的cout

std::endl 结束当前输出行。

2.局部变量 name

std::string name; //定义一个字符型变量 此处定义变量name,其类型是std::string; 变量name实在main()函数内部定义,因此是一个局部变量,其生存期是从main函数开始一直到main函数结束,变量name就会被销毁,变量所占的内存也会被操作系统回收。

3.greeting变量

(1)可以通过赋值号=,对变量greeting进行赋值

(2)可以通过+将一个字符串变量(name)和一个字符串字面量(“hello”)连接起来;也可以将来两个字符串变量连接在一起;但不可以将两个字符串字面量连接在一起。

如果一个运算符对不同类型的操作数具有不同的含义·,就说明此运算符重载了。·················

(3)const

const 是个修饰符;所修饰的变量变为只读变量,在程序中不可以再修改此变量的值

4. spaces变量

const std::string spaces (greeting.size(),' '); 该语句定义了一个名为spaces的字符串变量

(1)greeting.size()是一个调用成员函数的例子,名为greeting的对象,里面有个size成员;对其调用将返回greeting所包含的字符数

(2)(参数一,参数二),根据一个整数和一个字符构造一个字符串·;(greeting.size(),' ')将得到greeting.size()个空格。

总结:

(1). 字符串变量初始化的两种方法:一种是用=赋值,一种是()进行初始化;

(2).一般一个变量定义以后,要对它进行初始化,清除以前操作系统遗留的垃圾数据;

附件:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: