寫這題的時候遇到一點有關string的小問題
就是
當string在宣告時沒有指定字串時,沒辦法直接 cout<< str ; 來輸出字串,必須用for迴圈一個個輸出
但宣告時指定字串長度有時又不符合實際需求(像此題長度範圍為1~8)
請問各位高手
有沒有甚麼神奇的手法可以不用用for迴圈,就可以直接sout<< str ; 出去的???
簡單的程式碼如下
有沒有方法讓cout<<"output = "<< output << endl; 可以正確輸出output??
#include <iostream>
#include <cstring>
using namespace std;
int main()
{
int n;
while( cin>> n )
{
string output;
for( int i=0 ; i<n ; i++ )
output[i] = i + '0' ;
for( int i=0 ; i<n ; i++ )
cout<< output[i] ;
cout<< endl ;
cout<<"output = "<< output << endl;
}
return 0;
}
寫這題的時候遇到一點有關string的小問題
就是
當string在宣告時沒有指定字串時,沒辦法直接 cout<< str ; 來輸出字串,必須用for迴圈一個個輸出
但宣告時指定字串長度有時又不符合實際需求(像此題長度範圍為1~8)
請問各位高手
有沒有甚麼神奇的手法可以不用用for迴圈,就可以直接sout<< str ; 出去的???
簡單的程式碼如下
有沒有方法讓cout<<"output = "<< output << endl; 可以正確輸出output??
#include
#include
using namespace std;
int main()
{
int n;
while( cin>> n )
{
string output;
for( int i=0 ; i output[i] = i + '0' ;
for( int i=0 ; i cout<< output[i] ;
cout<< endl ;
cout<<"output = "<< output << endl;
}
return 0;
}
把 '\0' 放在 output[n] 應該就可以了吧
把 '\0' 放在 output[n] 應該就可以了吧
我之前就試過了
不行QQ