當我使用cout
很長的字符串時,它不輸出整個字符串,只輸出結尾。需要幫助輸出長字符串
std::string test[] = {"alotof text--sdfsdfsdfsdfsdfsfsdferer----248 characters"};
std::cout << *test << std::endl;
輸出:呃---- 248個字符
這是字符串的結束而已,最開始的被切斷
當我使用cout
很長的字符串時,它不輸出整個字符串,只輸出結尾。需要幫助輸出長字符串
std::string test[] = {"alotof text--sdfsdfsdfsdfsdfsfsdferer----248 characters"};
std::cout << *test << std::endl;
輸出:呃---- 248個字符
這是字符串的結束而已,最開始的被切斷
寫輸出到一個文件,並檢查內容是否在文件中。我猜想你的字符串包含回車('\r'
)字符,它們會將輸出的位置移動到行的前面,從視覺上覆蓋已寫在此行上的字符。但是,所有的字符都應該在文件中可見。
TY你是正確的,我沒有使用例子中的字符串沒有考慮它會影響多少。 –
我這個測試:
#include <iostream>
int main(){
std::string test[] = {"alotof text--sdfsdfsdfsddfasdfsdfasdfadfadfadfadfdfadfadfadfadfadfadfadsfasdfasdfasdfasdfasdfafdasdfadsfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfadsfasdfasdfadsfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfadsfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfadsafsdffsdfsfsdferer----248 characters"};
std::cout << test[0].length() << std::endl;
std::cout << *test << std::endl;
}
這裏是我的輸出:
336
alotof text-- sdfsdfsdfsddfasdfsdfasdfadfadfadfadfadfadfadfadfadfadfadfadsfasdfasdfasdfasdfasdfafdasdfadsfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfadsfasdfasdfadsfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfadsfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfadsafsdffsdfsfsdferer----248 characters
似乎沒有要什麼錯
您必須考慮某些變量。僅僅因爲它根據你的工作並不意味着它適用於每個人。 – 0x499602D2
我用Visual Studio 2010的C++編譯器測試,並且完全按照您所寫的和我的輸出編碼:
335
alotof text--sdfsdfsdfsddfasdfsdfasdfadfadfadfadfdfadfadfadfadfadfadfadsfasdfasdfasdfasdfa
sdfafdasdfadsfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfadsfasdfasdfadsfasdf
asdfasdfasdfasdfasdfasdfasdfasdfasdfadsfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfas
dfasdfasdfasdfasdfasdfasdfadsafsdffsdfsfsdferer----248 characters
適合我。
當您使用字符串而不是字符串數組時會發生什麼? – juanchopanza
它不應該因爲指針指向數組的第一個元素,這將是他的字符串。 –