简体   繁体   English

需要帮助输出长字符串

[英]Need help outputting long string

When I use cout for very long string it does not output the entire string, only the end. 当我将cout用于很长的字符串时,它不会输出整个字符串,而只会输出结尾。

std::string test[] = {"alotof text--sdfsdfsdfsdfsdfsfsdferer----248 characters"};
std::cout << *test << std::endl;

output: er----248 characters 输出:er ---- 248个字符

which is the end of the string only, most of the beginning was cut off 仅是字符串的结尾,大部分开头已被切断

Write the output to a file and check whether the content is in the file. 将输出写入文件,然后检查内容是否在文件中。 I would guess that your string contains carriage return ( '\\r' ) characters which cause the position of the output to be moved to the front of the line, visually overwriting the characters already written on this line. 我猜您的字符串包含回车符( '\\r' ),这些字符会导致输出的位置移至该行的开头,从而在视觉上覆盖该行上已写入的字符。 All characters should, however, be visible in the file. 但是,所有字符都应该在文件中可见。

I tested with this: 我对此进行了测试:

#include <iostream>

int main(){
    std::string test[] = {"alotof text--sdfsdfsdfsddfasdfsdfasdfadfadfadfadfdfadfadfadfadfadfadfadsfasdfasdfasdfasdfasdfafdasdfadsfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfadsfasdfasdfadsfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfadsfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfadsafsdffsdfsfsdferer----248 characters"};
    std::cout << test[0].length() << std::endl;
    std::cout << *test << std::endl;
}

here was my output: 这是我的输出:

336
alotof text--    sdfsdfsdfsddfasdfsdfasdfadfadfadfadfadfadfadfadfadfadfadfadsfasdfasdfasdfasdfasdfafdasdfadsfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfadsfasdfasdfadsfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfadsfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfadsafsdffsdfsfsdferer----248 characters

Doesn't seem to be anything wrong with it 似乎没有什么问题

I tested with Visual Studio 2010 C++ compiler, and code exactly as you wrote and my output was: 我使用Visual Studio 2010 C ++编译器进行了测试,并按照您编写的代码进行了编码,我的输出是:

335
alotof text--sdfsdfsdfsddfasdfsdfasdfadfadfadfadfdfadfadfadfadfadfadfadsfasdfasdfasdfasdfa
sdfafdasdfadsfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfadsfasdfasdfadsfasdf
asdfasdfasdfasdfasdfasdfasdfasdfasdfadsfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfas
dfasdfasdfasdfasdfasdfasdfadsafsdffsdfsfsdferer----248 characters

Works fine for me. 对我来说很好。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM