C++技巧(按长度分隔任意中英文混合字符串) |
|
www.nanhushi.com 佚名 不详 |
实现代码如下: char* DivideStr(char* display_str) { int length = 0; int k = 0; int i = 0; int len = 0; length = strlen(display_str)+1; char* tempStr = new char[length+length/5]; memset(tempStr,0,length+length/5); while(display_str[k]!='\0') { if(display_str[k] <= 122&&display_str[k] >= 32) { tempStr[i] = display_str[k]; len++; i++; k++; } else { tempStr[i] = display_str[k]; if(display_str[k+1]!='\0')//考试大提示如果是汉字就需要双字节计算 { tempStr[i+1] = display_str[k+1]; } len++; i+=2; k+=2; } if(len%5 == 0) { tempStr[i++] = '$'; } } return tempStr; } int main() { char* str = "一个抽象类tyu吧453u是么"; printf("%s\n",DivideStr(str)); return 0; }
|
|
|
文章录入:杜斌 责任编辑:杜斌 |
|
上一篇文章: 由于serverAdd.sin_addr.s_addr引发的思考 下一篇文章: 在C++编程开发中尽量使用引用做函数参数 |
【字体:小 大】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口】 |
|
|