您好,登錄后才能下訂單哦!
工作過程中,把寫代碼過程比較好的代碼片段做個記錄,如下的代碼段是關(guān)于C++按單詞換行的函數(shù)的代碼,希望對碼農(nóng)也有用途。
This function takes a string and an output buffer and a desired width. It then copies
the string to the buffer, inserting a new line character when a certain line
length is reached. If the end of the line is in the middle of a word, it will
backtrack along the string until white space is found.
#include <string.h>
#include <ctype.h>
int i = 0;
int k, counter;
while(i < strlen( string ) )
{
for ( counter = 1; counter <= line_width; counter++ )
{
if ( i == strlen( string ) )
{
buffer[ i ] = 0;
return buffer;
}
buffer[ i ] = string[ i ];
if ( buffer[ i ] == 'n' )
{
counter = 1;
}
i++;
}
if ( isspace( string[ i ] ) )
{
buffer[i] = 'n';
i++;
}
else
{
for ( k = i; k > 0; k--)
{
if ( isspace( string[ k ] ) )
{
buffer[ k ] = 'n';
i = k + 1;
break;
}
}
}
}
buffer[ i ] = 0;
return buffer;
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。