cin >> n;
string disks;
for(i=0; i < n; i++){
disks[2*i] = 1;
disks[2*i+1] = 0;
}
這樣說:string subscript out of range
。即使我將其更改爲(n-1)
。我試圖想到一個非常簡單的方法來將其設置爲交替1
和0
s,我無法找到它!循環更改字符串保持失敗?
這個循環爲什麼會導致錯誤?
'disks'是一個空字符串。 '磁盤[我]'是無效的(索引超出界限)的任何值'我'。 –
爲什麼你使用'std :: string',而不是說'std :: bitset'或者'std :: vector',用於存儲位呢?字符串被設計用於存儲字符。 –