CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  C/C++ >  C语言

strcmp和atoi区别

楼主zhengmushang(pretty)2005-04-02 20:08:15 在 C/C++ / C语言 提问

请问下面两个语句的不同:  
  //定义ss[i],ss[j]  
   
  if(strcmp(ss[i],ss[j])>0)                  
  和  
  if(atoi(ss[i])>atoi(ss[j]))  
   
  这两个比较语句的结果是一样的效果吗?  
  有什么不同吗  
  谢谢 问题点数:0、回复次数:6Top

1 楼zhengmushang(pretty)回复于 2005-04-02 22:13:50 得分 0

求救Top

2 楼nasi00(莫傲·逍遥)回复于 2005-04-02 22:20:20 得分 0

atoi()是把char*变成int,比如int   i   =   atoi("123");   的话,   i=123了。   而strcmp()是比较两个字符串的,当然不同了。Top

3 楼zhengmushang(pretty)回复于 2005-04-02 23:46:38 得分 0

这两个比较语句的结果是一样的效果吗?Top

4 楼xjp6688(大平/要做必须最好)回复于 2005-04-03 00:41:42 得分 0

#include   <string.h>  
  #include   <stdio.h>  
  #include   "iostream.h"  
   
  int   main(void)  
  {  
  char   *buf1   =   "aaa",   *buf2   =   "bbb",   *buf3   =   "ccc";  
  int   ptr;  
   
  ptr   =   strcmp(buf2,   buf1);  
  if   (ptr   >   0)  
              printf("buffer   2   is   greater   than   buffer   1\n");  
        else  
              printf("buffer   2   is   less   than   buffer   1\n");  
   
        ptr   =   strcmp(buf2,   buf3);  
        if   (ptr   >   0)  
              printf("buffer   2   is   greater   than   buffer   3\n");  
        else  
              printf("buffer   2   is   less   than   buffer   3\n");  
        system("pause");  
        return   0;  
  }  
   
  --------------------------------------  
  buffer   2   is   greater   than   buffer   1  
  buffer   2   is   less   than   buffer   3  
  请按任意键继续.   .   .  
   
   
   
  Top

5 楼xjp6688(大平/要做必须最好)回复于 2005-04-03 00:42:33 得分 0

#include   "iostream.h"  
   
  #include   <stdlib.h>  
    #include   <stdio.h>  
   
    int   main(void)  
    {  
          int   n;  
          char   *str   =   "12345.67";  
   
          n   =   atoi(str);  
          printf("string   =   %s   integer   =   %d\n",   str,   n);  
          system("pause");  
          return   0;  
    }  
   
   
  ----------------------------------  
  string   =   12345.67   integer   =   12345  
  请按任意键继续.   .   .  
   
  Top

6 楼Wolf0403(废人:独活十年~心如刀割)回复于 2005-04-03 09:33:01 得分 0

除非进行数字的值比较,否则应使用   strcmp   对字符串进行比较。通常而言,0   ==   strcmp   (...)   这个比较用于判断两个字符串是否相同。其它的比较意义不大(对于非   ASCII   编码的文本,也许返回的大小是非特定的)Top

相关问题

  • lstrcmp与strcmp有什么区别?
  • -> 和 . 的区别?
  • in和or的区别
  • jmail和cdonts区别
  • count() 和 count(*)区别?
  • TCP和UDP区别
  • equals和==的区别
  • char 和 TCHAR 区别
  • EnterpriseBean和EntityBean区别
  • CMP和BMP区别

关键词

  • strcmp
  • atoi
  • 字符串
  • buffer
  • 比较
  • buf
  • ss
  • greater
  • less
  • ptr

得分解答快速导航

  • 帖主:zhengmushang

相关链接

  • C/C++ Blog
  • C/C++类图书
  • C/C++类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo