我正在尝试打印一个字符数组,但我想在固定数量的字符后打印换行符。到目前为止,我只能在读取第一个固定数量的字符后打印换行符。谁能指出我正确的方向?
for ( int i = 0; i < (m_nWidth*m_nHeight); i++) {
if (i != m_nWidth)
cout << pMyPointer[i];
else
{
printf("\n");
}
}
答案 0 :(得分:4)
if( i % n == 0 && i != 0 ) printf("\n");
其中n
是换行符之间的字符数。
编辑: 在完整的背景下:
#include <iostream>
int main()
{
const int n = 5;
const std::string str("abcdefghijklmnopqrstuvwxyz");
for (int i=0 ; i<str.size() ; ++i)
{
if (i%n == 0 && i != 0)
std::cout << '\n';
std::cout << str[i];
}
std::cout << std::endl;
return 0;
}
答案 1 :(得分:3)
您可以使用模块运算符:
if(i % n == 0)
printf("\n");