我想在我寫的函數裏面使用string::length()
,名字爲match()
,但是我得到了垃圾值。string :: length()返回垃圾值
爲什麼標記的行正在輸出垃圾值?
#include<iostream>
#include<stdio.h>
#include<string>
using namespace std;
void match(string st1,string st2)
{
for(int i=0;i<st1.length();i++)
{
cout<<"Why this value is garbage "<<(i-st1.length()-1)<<"\t";
// this expression gives wrong values ^^^^^^^^^^^^^^^
}
}
int main()
{
string st1,st2;
cout<<"Enter the required string\n";
cin>>st1>>st2;
match(st1,st2);
return 0;
}
請問您可以添加您獲得的輸出嗎? –
你是什麼意思_「垃圾」_?你從'我'減去長度,並想知道爲什麼你會得到一個負值:'i-st1.length() - 1'? –
您的文章標題具有誤導性。 length()工作正常,你的表達式(i-st1.length() - 1)是錯誤的。 – eddie