|
| Hjælp, komme operator Fra : Kasper |
Dato : 16-10-08 19:44 |
|
Hej,
Nogle der kan hjælpe med at få mig til at forstå denne line, og hvad der
sker:
if((i=iap_name_equal((*node_p)->class_name, IRPORT_PARAM(&req_p->u.ctl), n))
&& (i=iap_name_equal((*node_p)->attr_name, IRPORT_PARAM(&req_p->u.ctl)+i,
n-i))) {
Jeg ved det er svært når i ikke kan se hele koden, men det er mest den komma
operator jeg er i tvivl om, jeg har læst at den skulle bruge den værdi der
er mest til højre... ???
if sætningen kan jeg finde ud af :)
| |
Kasper (16-10-2008)
| Kommentar Fra : Kasper |
Dato : 16-10-08 19:46 |
|
"Kasper" <ask@ask.ask> wrote in message
news:48f78b5f$0$56796$edfadb0f@dtext02.news.tele.dk...
> Hej,
>
> Nogle der kan hjælpe med at få mig til at forstå denne line, og hvad der
> sker:
>
> if((i=iap_name_equal((*node_p)->class_name, IRPORT_PARAM(&req_p->u.ctl),
> n)) && (i=iap_name_equal((*node_p)->attr_name,
> IRPORT_PARAM(&req_p->u.ctl)+i, n-i))) {
>
> Jeg ved det er svært når i ikke kan se hele koden, men det er mest den
> komma operator jeg er i tvivl om, jeg har læst at den skulle bruge den
> værdi der er mest til højre... ???
>
> if sætningen kan jeg finde ud af :)
Hmm det er vidst bare et alm kald...
| |
Michael Zedeler (17-10-2008)
| Kommentar Fra : Michael Zedeler |
Dato : 17-10-08 22:48 |
|
Kasper wrote:
> Hej,
>
> Nogle der kan hjælpe med at få mig til at forstå denne line, og hvad der
> sker:
>
> if((i=iap_name_equal((*node_p)->class_name, IRPORT_PARAM(&req_p->u.ctl), n))
> && (i=iap_name_equal((*node_p)->attr_name, IRPORT_PARAM(&req_p->u.ctl)+i,
> n-i))) {
>
> Jeg ved det er svært når i ikke kan se hele koden, men det er mest den komma
> operator jeg er i tvivl om, jeg har læst at den skulle bruge den værdi der
> er mest til højre... ???
>
> if sætningen kan jeg finde ud af :)
Endnu et eksempel på hvor meget det betyder at formattere sin kode så
den er til at læse....
Så vidt jeg kan se, gøres der ikke brug af komma-operatoren. Her er
koden omskrevet, så den kan læses:
if(
(i=iap_name_equal(
(*node_p)->class_name, IRPORT_PARAM(&req_p->u.ctl), n
))
&&
(i=iap_name_equal(
(*node_p)->attr_name, IRPORT_PARAM(&req_p->u.ctl)+i,
n-i
))
)
Mvh. Michael.
| |
Kent Friis (17-10-2008)
| Kommentar Fra : Kent Friis |
Dato : 17-10-08 23:07 |
|
Den Fri, 17 Oct 2008 23:47:57 +0200 skrev Michael Zedeler:
> Kasper wrote:
>> Hej,
>>
>> Nogle der kan hjælpe med at få mig til at forstå denne line, og hvad der
>> sker:
>>
>> if((i=iap_name_equal((*node_p)->class_name, IRPORT_PARAM(&req_p->u.ctl), n))
>> && (i=iap_name_equal((*node_p)->attr_name, IRPORT_PARAM(&req_p->u.ctl)+i,
>> n-i))) {
>>
>> Jeg ved det er svært når i ikke kan se hele koden, men det er mest den komma
>> operator jeg er i tvivl om, jeg har læst at den skulle bruge den værdi der
>> er mest til højre... ???
>>
>> if sætningen kan jeg finde ud af :)
>
> Endnu et eksempel på hvor meget det betyder at formattere sin kode så
> den er til at læse....
>
> Så vidt jeg kan se, gøres der ikke brug af komma-operatoren. Her er
> koden omskrevet, så den kan læses:
Det er da mindre læseligt end originalen.
> if(
> (i=iap_name_equal(
Fx ligner flg:
> (*node_p)->class_name, IRPORT_PARAM(&req_p->u.ctl), n
netop føromtalte komma-operator. I originalen stod kommaerne i
det mindste inde i et funktionskald.
Mvh
Kent
--
Hvis en sort kat går over vejen foran en bil, betyder det ulykke
.... for katten.
| |
|
|