Question

Pour une raison quelconque, mon si les déclarations ne fonctionnent pas comme je les veux.

use strict;
use warnings;

my $syl;
my $name = "Chris";
print "Enter my name\n";
$syl = <>;
if ($syl eq $name)
{
  print "You entered my name!\n";
}
else
{
  print "That's not my name!\n";
}

Il semble que cela devrait fonctionner à partir de tous les tutoriels que j'ai lu, mais quand je tape « Chris » si majuscules, minuscules, avec ou sans guillemets, il évalue toujours faux. Mises en garde et utiliser stricte utilisation ne me dites pas que je fais mal de quoi que ce soit quoi, si quelque chose, puis-je faire?

Était-ce utile?

La solution

Vous devez utiliser chomp. Que les bandes de la nouvelle ligne à la fin de la chaîne d'entrée qui se est mis là quand l'utilisateur a tapé « Entrée ».

$syl = <>;
chomp $syl;
#.... etc...
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top