こんにちは、私は答えを探してみましたが、見つかりませんでした。(使用方法はわかりました)しかし、問題は、コードが機能しない理由がわからないということです。これが私のコードです:
#include <iostream>
#include <string>
using namespace std;
string acorta(string palabra, int carac)
{
string acortado;
acortado=palabra;
if(palabra.length() > carac)
{
return acortado;
}
else
{
acortado.resize(carac);
return acortado;
}
}
int main(int argc, char** argv) {
cout<< acorta("Univesidad",5)<<endl; // here it should show "Unive"
cout<< acorta("Secretariado",10)<<endl; //here it should show "Secretaria"
cout<< acorta("Estudio",11)<<endl; //here it should show "Estudio" since th number is long than the word
return 0;
}
intが言う限り文字列を返す必要があるため、おそらくプログラムは文字列と整数を受け取る必要があります。たとえば、("Laptop",4) は "Lapt" を返す必要があります。int が単語より大きい場合は、単語全体を返す必要があります。
問題は、プログラムが単語全体を返すべきではないときに返すことです。ですから、問題はそれが私の機能に入っていないことだと思います。私が間違っている場合は修正してください。