6
#include<iostream>
#include<string>
using std::string;
using std::cout;
using std::endl;
int main()
{
string s;
cout << s.size() << endl;
cout << s[0] << endl; //output empty line
return 0;
}
C++ çıktısını alabilirsiniz endeksi 0 eleman boş bir dize boş bir dize, neden bir elemana sahip olabilir s [0]? Benim düşünceme göre, bir çalışma zamanı hatası almalısınız. Bir kongre mi yoksa başka bir şey mi?neden <strong>s</strong> gibi
Bunun bir mantık için [n] 'yapmasının mantığı, char [n + 1]' olarak uygulanan C stili bir dizeye benzer davranır mı? – Barmar
@Barmar Sanırım bunun gibi bir şey. Detaylı mantık muhtemelen bir yerde bulunabilir, ancak kazmak için çok tembelim. – Brian
@Deduplicator, evet, bu §21.4.5 [string.access] – quantdev