12 12
发新话题
打印

不明白

定义数比较函数( `! L6 l3 C8 @; E7 O0 [" `# `& a2 }
numcmp(a,b)
8 d: b7 a/ P1 |char *a,*b; /问题:这里的a,b不是两个要比较的字符吗,怎么变成指针变量啦?就这一个地方不明白?/
* G; A2 M8 C- A/ s4 w  Z* e{/ K4 \4 X2 H- T( k1 [
if(atoi(a)==atoi(b)) /*atoi()为字符转数字函数*/8 @, u) g4 r8 K4 F9 H
  return(0);, v+ Y( e. ~9 o) j6 C: v; x
else
# r8 v3 r8 {9 K7 z$ t/ `  return(1);
1 g) m# d; v# k9 T( @4 @}      

TOP

你看看atoi这个函数的声明。
. m, J& Q5 K0 M* J7 W5 uatoi(char *ch)2 m: U8 \+ d" z6 q7 T0 K0 ?
里面的参数当然要用字符串指针了。3 V9 Q: i7 C3 p8 _
      
[img]http://www.linuxeden.com/dog.gif[/img] ! 有那么严重么!!!

TOP

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

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

TOP

现在怎么声明,
) w; U0 x, s0 C2 Z2 F7 P80年代的那个是什么原理,我不明白      

TOP

numcmp(char *a ,char *b)
5 p- T  m- y  R, x+ q5 n      
-----------------------------------------
http://www.darkspy.org/blog

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

TOP

这我就不明白了,a,b是指针,
! `) A. y& B, ^! F, h9 y- M那么要比较的字符(应该是单字符吧?)是不是a和b?; a9 y5 I6 t" n8 p" D# a
还是a,b开始的位置?8 w' R4 ~9 ?$ Y" G
我不明白,请详细给我讲讲?我是女生,很笨的!4 |  _, C* Z8 |9 \
      

TOP

[QUOTE]原文由 disguise 发表* N# d9 s4 ?1 ^# Y
[B]这我就不明白了,a,b是指针,
) v  o5 j5 F- y/ V4 j那么要比较的字符(应该是单字符吧?)是不是a和b?
* a6 H' b% H9 ?4 e9 N* u还是a,b开始的位置?
! w- k( t- Z1 T- a我不明白,请详细给我讲讲?我是女生,很笨的!  S8 m( f8 P- R6 \0 _
[/B][/QUOTE]
) n( ]1 [6 G9 L* ]. [8 G
( f$ t5 [- O0 m  z: D$ j是比较整个字符串,指针指向字符串中的每一个字符.9 G5 p; x$ `& y# @, t, f3 g9 E1 b
作程序员就应该有专研精神,这不是笨不笨的问题.      
-----------------------------------------
http://www.darkspy.org/blog

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

TOP

1 怎么指向每一个字符,a,b又不是指针数组?
/ D- n' ]( k# R+ f/ A5 A2 在本题中是数的比较,那么要atoi(a)==atoi(b)有什么用?是a,b指向数的每一位,还是把数赋给a,b?      

TOP

(char)(a+i)
; u. A/ E6 e2 O* V" @3 K+ n就可以拿到每个字符了。
/ h  h3 D' F& X比如你要比较a字串和b字串中字符的大小。! X1 {+ A6 I" r+ R
if( char(a+i) > char(b+i) ): ?! F9 j0 V) o' B3 a
   printf("a+i > b+i");      
[img]http://www.linuxeden.com/dog.gif[/img] ! 有那么严重么!!!

TOP

可是本题是数的比较呀?      

TOP

 12 12
发新话题