12 12
发新话题
打印

不明白

定义数比较函数
) K6 L( m, j$ b7 }7 r( jnumcmp(a,b): |  I3 @) N  Q( I! r
char *a,*b; /问题:这里的a,b不是两个要比较的字符吗,怎么变成指针变量啦?就这一个地方不明白?/3 z  \  t/ ~. i# n) n$ X
{
2 v5 R' ^4 \  `) b6 o9 Y6 h+ ] if(atoi(a)==atoi(b)) /*atoi()为字符转数字函数*/. n$ T7 ?! g, \, @4 I
  return(0);# V' U% r/ w7 T2 a
else
% r- O% M8 i! M) i' o  return(1);& m7 e7 h# l, d# L  o, T+ u5 n
}      

TOP

你看看atoi这个函数的声明。
+ x0 m& W# x/ @+ o9 @atoi(char *ch)0 t$ }$ x7 _8 H5 g" e( P3 z5 D" q, R
里面的参数当然要用字符串指针了。. u" }5 H3 b5 S- a; x
      
[img]http://www.linuxeden.com/dog.gif[/img] ! 有那么严重么!!!

TOP

这种声明方式是80年代的C语言声明方式,很陈旧了。      
-----------------------------------------
http://www.darkspy.org/blog

自大的人把宗教当迷信,无知的人把迷信当宗教

TOP

现在怎么声明,
' h& _1 ?/ J( G! D- a/ x, i80年代的那个是什么原理,我不明白      

TOP

numcmp(char *a ,char *b)
- ^; f, l+ S- i! g) x+ d7 l      
-----------------------------------------
http://www.darkspy.org/blog

自大的人把宗教当迷信,无知的人把迷信当宗教

TOP

这我就不明白了,a,b是指针,
  X5 G- |3 |& n, D  o那么要比较的字符(应该是单字符吧?)是不是a和b?
) ^+ y9 I& e6 L$ y( D0 A4 h% L; V& F# D4 P还是a,b开始的位置?5 {1 p" }# H' ]3 L6 @1 Q6 n; A7 a0 T
我不明白,请详细给我讲讲?我是女生,很笨的!
6 n; D7 D# F( P0 s+ E      

TOP

[QUOTE]原文由 disguise 发表
; i$ L" _! {2 z4 ^* |8 F8 {" u[B]这我就不明白了,a,b是指针,
% i: J: y: ~* J0 j( E那么要比较的字符(应该是单字符吧?)是不是a和b?
' T1 N* H; W  m$ E, [还是a,b开始的位置?
) _$ E. s/ [$ s0 j5 @  v  _我不明白,请详细给我讲讲?我是女生,很笨的!
; \* ~# Q6 @; k  p [/B][/QUOTE]; O% k1 P) r  ]( h5 t

7 o  \. `6 S( L& t8 M3 l8 ~是比较整个字符串,指针指向字符串中的每一个字符.8 N# x6 i0 E0 \; j+ W$ M
作程序员就应该有专研精神,这不是笨不笨的问题.      
-----------------------------------------
http://www.darkspy.org/blog

自大的人把宗教当迷信,无知的人把迷信当宗教

TOP

1 怎么指向每一个字符,a,b又不是指针数组?
" x0 w5 x* N# d3 Q+ o2 在本题中是数的比较,那么要atoi(a)==atoi(b)有什么用?是a,b指向数的每一位,还是把数赋给a,b?      

TOP

(char)(a+i)) H2 T. k& i% G' I- f' Z* A
就可以拿到每个字符了。
7 V1 k" {8 Y$ u- v7 R比如你要比较a字串和b字串中字符的大小。
! k7 z" [7 @1 s/ b# {/ I3 Xif( char(a+i) > char(b+i) )
3 G+ l6 H) }% b# \. n) W   printf("a+i > b+i");      
[img]http://www.linuxeden.com/dog.gif[/img] ! 有那么严重么!!!

TOP

可是本题是数的比较呀?      

TOP

 12 12
发新话题