您好,登錄后才能下訂單哦!
工作過程中,把寫代碼過程比較好的代碼片段做個記錄,如下的代碼段是關于C++按單詞換行的函數的代碼,希望對碼農也有用途。
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;
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。