Accelerated C++ 第一章学习记录

2021/9/18 1:05:06

本文主要是介绍Accelerated C++ 第一章学习记录,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

第一章的学习总计一天半。相较于第零章所学的基本内容:标准头文件<iostream>,字符串和“字符串直接量”、作用域{}、名字空间std::、输出cout。第一章的学习内容主要是输入std::cin>>;string库定义变量、用()和字符直接量‘ ’构建变量、“+”的左结合等。

下面依次进行详述。

1 用string库定义变量

#include<iostream>
#include<string>
int main()
{
std::string name;
std::cin>>name;
std::cout<<"Hello,"<<name<<"!"<<std::endl;
return 0;
}

用std::string name在花括号中定义了名为name的局部变量。并使用std::cin>>name将输入值读取进name变量中。

1.1 写一个两次读取输入cin的打招呼程序

#include<iostream>
#include<string>
int main()
{
std::cout<<"Hello,Whats your name?";
std::string name;//构建name变量
std::cin>>name;//读取输入的值存入name中

//用+连接变量和字符串直接量
const std::string greeting="Hello,my name is"+name+".";
const std::string ask="And what is yours?";

std::cin>>name;
const std::string answer="My name is"+name+",nice to meet you.";

//进行输出
std::cout<<std::endl;
std::cout<<greeting<<std::endl;
std::cout<<ask<<std::endl;
std::cout<<answer<<std::endl;
return 0;
}

输出结果为:

Hello,Whats your name? Mike Zhang

Hello,my name isMike.
And what is yours?
My name isZhang,nice to meet you.


//这样编写虽然实现了打招呼的目的,但却只能一下打出两个名字,不能先打出一个名字,等“And what is yours?”显示出来以后再打另一个名字完成交互。针对这个情况,改变一下编程模式。

#include<iostream>
#include<string>
int main()
{
	{std::cout << "Hello,Whats your name?" << std::endl;
	std::string name;//构建name变量
	std::cin >> name;//读取输入的值存入name中

	//用+连接变量和字符串直接量
	const std::string greeting = "Hello,my name is " + name + ".";
	const std::string ask = "And what is yours?";
	std::cout << greeting << std::endl;
	std::cout << ask << std::endl; }
	{
		std::string name;
		std::cin >> name;
		const std::string answer = "My name is " + name + ",nice to meet you."; 
		std::cout << answer << std::endl;
	}
	return 0;
}

用花括号将两段程序分开,分别定义局部变量name。将最后统一进行输出的指令整合到每行程序中。

输出结果如下: 

Hello,Whats your name?
Li
Hello,my name is Li.
And what is yours?
Zhang
My name is Zhang,nice to meet you.

完美~

2 用()来定义变量

const std::string A(10,'*') ;
const std::string B(A.size,' ');

意为定义一个名为A的变量,内容为十个‘*’符号。再定义一个名为B的变量,与A同等长度,内容为空格。

注意这里用的是‘ ’单引号来表示字符直接量。A.size是一个调用的函数,用来构造一个和A相同长度的变量B。

3 输入与输出的符号方向

输入:is>>s;把内容输入进变量s中

输出:os<<s;把s输出进输出流。

第一章学习内容总结完毕。



这篇关于Accelerated C++ 第一章学习记录的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程