VC++ C++ C# Algorithm
C++博客
首页
新随笔
联系
聚合
管理
21 Posts :: 3 Stories :: 31 Comments :: 0 Trackbacks
常用链接
我的随笔
我的评论
我参与的随笔
留言簿
(4)
给我留言
查看公开留言
查看私人留言
随笔档案
(21)
2007年3月 (13)
2007年1月 (1)
2006年12月 (5)
2006年11月 (2)
文章档案
(3)
2007年1月 (2)
2006年12月 (1)
相册
照片
资料网站
C++之父主页
题库吧
数据库面试题|Java面试题|C++面试题|.NET面试题
微软在线课程
搜索
最新评论
1. re: c++名字查找
是
--周敏桢
2. re: c++名字查找
名字区码
--王
3. re: SDL游戏编程(3)使用SDL扩展类库显示PNG图片和字体
评论内容较长,点击标题查看
--dniit
4. re: c++名字查找
桔柑
--黄建宁
5. re: c++名字查找
我要找到王疆
--王疆
评论排行榜
1. c++名字查找(13)
2. SDL游戏编程(3)使用SDL扩展类库显示PNG图片和字体(4)
3. 循环的效率(4)
4. SDL游戏编程(8)鼠标事件(3)
5. C/C++中的日期和时间(转载)(2)
大小忽略的字符串比较
#include
<
cassert
>
#include
<
cctype
>
#include
<
cmath
>
#include
<
cstddef
>
#include
<
ostream
>
#include
<
string
>
using
std::allocator;
using
std::basic_string;
using
std::
string
;
using
std::char_traits;
using
std::ostream;
using
std::tolower;
using
std::tolower;
class
ichar_traints:
public
char_traits
<
char
>
{
public
:
static
int
compare(
const
char
*
str1,
const
char
*
str2,size_t n)
{
for
(size_t i
=
0
; i
<
n; i
++
)
{
if
(str1
==
0
)
return
-
1
;
else
if
(str2
==
0
)
return
1
;
else
if
(toupper(
*
str1)
<
toupper(
*
str2))
return
-
1
;
else
if
(toupper(
*
str1)
>
toupper(
*
str2))
return
1
;
assert(tolower(
*
str1)
==
tolower(
*
str2));
str1
++
;
str2
++
;
}
return
0
;
}
}
;
typedef basic_string
<
char
,ichar_traints
>
istring;
inline ostream
&
operator
<<
(ostream
&
os,istring
&
str)
{
os
<<
string
(str.c_str());
}
int
_tmain(
int
argc, _TCHAR
*
argv[])
{
//建立二个字符大小写不同的串
istring s1
=
"
qianweifeng
"
;
istring s2
=
"
QianweiFeng
"
;
std::cout
<<
s1.compare(s2);
int
pause;
std::cin
>>
pause;
return
0
;
}
摘自Thinking in C++
posted on 2006-12-26 15:20
大熊猫
阅读(604)
评论(0)
编辑
收藏
引用
只有注册用户
登录
后才能发表评论。
【推荐】100%开源!大型工业跨平台软件C++源码提供,建模,组态!
网站导航:
博客园
IT新闻
BlogJava
博问
Chat2DB
管理
Powered by:
C++博客
Copyright © 大熊猫