// 第2题.cpp : 定义控制台应用程序的入口点。
/*修改程序清单9.9: 用string类代替字符数组。
这样,该程序将不再需要检查输入的字符串是否过长,同时可以将输入字符串同字符串""进行比较,以判断是否为空行。
程序清单9.9如下:*/
#include "stdafx.h"
//static.cpp -- using a static local variable
#include <iostream>
// constants
using namespace std;
const int ArSize = 10;
// function prototype
//void strcount(const char * str);
void strcount(string str);
int main()
{
string input;
cout << "Enter a line:\n";
getline(cin,input);
while (input!="")
{
strcount(input);
cout << "Enter next line (empty line to quit):\n";
getline(cin, input);
}
cout << "Bye\n";
// code to keep window open for MSVC++
/*
cin.clear();
while (cin.get() != '\n')
continue;
cin.get();
*/
return 0;
}
void strcount(const string str)
{
using namespace std;
static int total = 0; // static local variable
int count = 0; // automatic local variable
cout << "\"" << str << "\" contains ";
while (str[count]) // go to end of string
count++;
total += count;
cout << count << " characters\n";
cout << total << " characters total\n";
}
C++ primer Plus(第六版)中文版 第九章第2题
最新推荐文章于 2024-08-27 00:30:00 发布