删除宽字符串

来源:互联网 发布:专业淘宝图片拍摄价格 编辑:程序博客网 时间:2024/05/16 17:57

删除宽字符串,需要注意的是需要设置 本地编码 #include<locale.h>,和 setlocale(LC_ALL,"zh-CN");还要需要注意的是每个宽字符的每个字符都是宽字符,结束符 \0 也是。

操作代码如下:

/* 需要注意的是 \0 也应该是宽字符的 L'\0' */#define _CRT_SECURE_NO_WARNINGS#include<stdio.h>#include<stdlib.h>#include<string.h>#include<locale.h>void delWchar(wchar_t *str, wchar_t *ch){/* 判断有没有要删除的字符串 */wchar_t *pstr = pstr = wcsstr(str, ch);if (NULL == pstr){printf("没有要删除的字符串\n");return;}else{for (pstr; pstr != NULL; pstr = wcsstr(pstr, ch)){wchar_t *temp = pstr;wchar_t *ptemp = pstr;//跳过要删除的字符,用后面的字符覆盖要删除的字符ptemp += wcslen(ch);/* 需要注意的是 \0 也应该是宽字符的 L'\0' */while (*temp !=L'\0'){*temp = *ptemp;temp++;ptemp++;}//wprintf(L"%s\n", pstr);}}}void main(){setlocale(LC_ALL, "zh-CN");/* 宽字符 "\":起联接作用 */wchar_t str[] = L"上联:试问中国男足几多愁. 下联:恰似一群太监上青楼. 横联:无人能射\上联:再问中国男足几多愁.下联:恰似一群妓女守青楼.横联:总是被射\上联:三问中国男足几多愁.下联:恰似阳痿患者逛青楼.横联 : 欲射不能\上联:四问中国男足几多愁.下联:恰似一群小孩上青楼.横联 : 尚不能射\上联:五问中国男足几多愁.下联:恰似一群傻瓜去青楼.横联 : 往哪里射\love  love  love  love  love  love love love\中国队要是能进球,我就投案自首!--拉登\中国队要是能进球,我就停止核武器!--内贾德\中国队要是能进球,我就改革开放!--金三胖\中国队要是能进球,我就把靖国神社拆了!--小泉纯一郎\中国队要是能进球,我就认拉灯当干爹!--布什\中国队要是能进球,我就信佛!--上帝\中国队要是能进球,我就信上帝!--释迦牟尼\中国队要是能进球,我就回归!--阿扁\中国队要是能进球,我马上复活--阿拉法特\中国队要是能进球,我们就辞职!--中国足协最后说\中国队要是能进球, 我就倒着转!--地球说\中国对要是能进球, 我就从西边出来!--太阳说\中国对要是能进球, 我就去给猫当伴娘!--耗子说\中国对要是能进球, 我就再爆炸一次!-宇宙最后说 ";wprintf(L"%ls\n", str);printf("======================================================\n");wchar_t p[1024];printf("请输入你要删除的字符串:");wscanf(L"%s", p);wprintf(L"%s\n", p);printf("======================================================\n");delWchar(str,p);wprintf(L"%ls\n", str);system("pause");}



0 0
原创粉丝点击