日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

宽字符串忽略大小写比较的实现(原)

發布時間:2023/12/10 编程问答 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 宽字符串忽略大小写比较的实现(原) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

??????????????????????????????????????????????????????????????????????????????????????????????????????????? 寬字符串忽略大小寫比較的實現(原)

????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????孫文濤 2008-07-24

?

在Mac機器平臺上沒有wcsicmp 或 wcscasecmp之類的函數實現對寬字符忽略大小寫的比較,所以實現了好幾種方法。

一個自然的思路是:

(1) wcscpy 原字符串到tmp字符串;

(2) tolower tmp字符串;

(3) 然后調用僅存的wcscmp 完成比較。

?

我曾經實現過幾次這個步驟,一個是實現起來比較繁瑣,效率等方面更是不好說。

今天晚上算是花了些時間,在google code中search了好些代碼,終于實現了一個較好的版本。

?

#include?<stdlib.h>??//?for?wcstombs
#include?<wctype.h>??//?for?towlower
#include?<wchar.h>???//?for?wchar_t
#include?<stdio.h>???

int?wcscasecmp(const?wchar_t*?cs,const?wchar_t?*?ct)
{
?
while?(towlower(*cs)?==?towlower(*ct))
???
{
??????
if?(*cs?==?0)
?????????
return?0;
??????cs
++;
??????ct
++;
???}

???
return?towlower(*cs)?-?towlower(*ct);
}



int?main()
{
????wchar_t?mpString[]?
=?L"Hello?World";
????wchar_t?strMpString[]?
=?L"HELLO?WORLD";
????
????
int?ret?=?wcscasecmp(mpString,?strMpString);
????
if(!?ret)
????
{
????????printf(
"Year!?Equals!\n");
????}

????
else
????
{
????????printf(
"Oops!?Not?equals!\n");
????}

????
????
//?after?conversion
????wprintf(L"after?conversion?mpString?=?%s?\n",?mpString);
????wprintf(L
"after?conversion?strMpString?=?%s?\n",?strMpString);
}

?

?

體會:

(1) 以后如果碰到類似的問題,多用Google Code搜索;

(2) Apple Mac OS X的開發,基本的C/C++函數的查詢在這個網頁,我平時需要反復查詢C/C++ API,所以這個網站比較實用的。

http://developer.apple.com/DOCUMENTATION/Darwin/Reference/ManPages/index.html#//apple_ref/doc/framework/manpages

?

轉載于:https://www.cnblogs.com/SunWentao/archive/2008/07/24/1250924.html

總結

以上是生活随笔為你收集整理的宽字符串忽略大小写比较的实现(原)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。