Visualizzazione dei risultati da 1 a 3 su 3

Discussione: [Perl] if ($i=0) ???

  1. #1
    Utente di HTML.it L'avatar di Jeyne
    Registrato dal
    Feb 2003
    Messaggi
    101

    [Perl] if ($i=0) ???

    Ho notato che queste istruzioni, che a me paiono tanto ovvie (ma non conosco perl)... col perl non funzionano:

    $i=0;
    if ($i= 0) {print "peppo"};

    mentre così si....


    $i=1;
    if ($i= 1) {print "peppo"};

    :master: :master: :master:

    c'è qualcuno che sa il motivo??
    grazie

  2. #2
    eheheheheh

    questo con il perl c'entra poco... infatti avresti lo stesso risultato con il 90% dei linguaggi di programmazione, i quali distinguono tra "uguale" in senso di assegnazione di un valore, e "uguale" in senso di confronto tra valori.

    per cui se dici $i=0 tu assegni 0 alla variabile $i, inoltre se scrivi
    if($i=0){...}

    dici che vuoi eseguire quanto contenuto in {} solo se l'asegnazione restituisce TRUE, il che non può essere poichè 0 è sempre FALSE.
    Al contrario con
    if($i=1){}
    ottini sempre TRUE.

    Per fare quello che ti serve, cioè un confronto devi scrivere:

    if($i==0)
    oppure
    if($i==1)

    che significa "se $i è uguale ad x allora esegui{}"
    Marco Allegretti
    shishii@tiscalinet.it
    Lang: PERL, PHP, SQL.
    Linux user n° 268623 Fedora Core 10, Fedora Core 6, Debian Sarge on mips

  3. #3
    Utente di HTML.it L'avatar di Jeyne
    Registrato dal
    Feb 2003
    Messaggi
    101
    ma quanto sono scema!!... avevo avuto la sensazione che per perl il segno dell'uguale e del confronto fossero la stessa cosa...




    grazie

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.