首页 > 解决方案 > 创建字符串文字

问题描述

我有一个字符串数组。我想获取该数组中的第 n 个单词,并打印如下输出:

输入:government 输出:g8t

基本上:first letter+ total number of letters-2+last letter

输出也存储在字符串数组中。这是我尝试过的基本代码:

out[j]=in[j].at(0) + (n-2) + in[j].at(n-1);
//n is the length of word , used str.length() for that

这里有什么问题?

标签: arraysstringc++14

解决方案


注意这一点to_string!!!

一个小试验:

#include<iostream>
#include<string>
#include<vector>

using namespace std;

int main() {

vector<string> words;
string input;
int count = 0;
cout << "Enter 5 words :";

while (cin >> input) 
{
    words.push_back(input);
    if (++count > 4)
        break;
}

for (int i = 0; i < words.size(); i++) {
    string str;
    int size = words.at(i).length();
    str = words.at(i).at(0) + to_string(size) + words.at(i).at(size - 1);
    cout << str + "\n";
}

cin>> input;
return 0;
}

推荐阅读