题目描述
编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串。但是要保证汉字不被截半个,如"我ABC"4,应该截为"我AB",输入"我ABC汉DEF"6,应该输出为"我ABC"而不是"我ABC+汉的半个"。
输入描述:
输入待截取的字符串及长度
输出描述:
截取后的字符串
示例1
输入
我ABC汉DEF 6
输出
我ABC
代码:
//第四十四题 按字节截取字符串
#include<iostream>
#include<string>
using namespace std;
int main()
{
int iOut;
string inStr;
while (cin >> inStr >> iOut)
{
if (inStr.length() > iOut)
{
if ((inStr[iOut - 1]>='A' && inStr[iOut - 1]<='Z') || (inStr[iOut - 1] >= 'a' && inStr[iOut - 1] <= 'z'))
cout << inStr.substr(0, iOut).c_str() << endl;
else
cout << inStr.substr(0, iOut - 1).c_str() << endl;
}
else
cout << inStr.c_str() << endl;
}
return 0;
}