I always think "what am I getting as the result of the evaluation of this 
expression?".  In this case, you're asking
for the evaluation of element zero in array "array", which is a scalar, so $array[0] 
means (at least to my little
brain) "scalar returned from the zeroth element of array "array"".  Is that wrong?

Wagner-David wrote:

>         Unsure. I always run with warnings and I was told it was better to use $_[0] 
>vs @_ . The message there was
>
> Scalar value @_[0] better written as $_[0]
>
>         On the second it comes back with msg:
>
> Scalar value @answers[$i] better written as $answers[$i]
>
>         So I did.
>
> Wags ;)
>
> -----Original Message-----
> From: Steven M. Klass [mailto:[EMAIL PROTECTED]]
> Sent: Friday, February 15, 2002 14:09
> To: Wagner-David; [EMAIL PROTECTED]
> Subject: Re: More help with my function
>
> Hi all,
>
> Doh!! It must be MONDAY!!  I am such an IDIOT!!
>
> Couple of questions.  How did changing $prompt [@_[0]] to $prompt $_[0] fix
> it?  I mean why didn't $_[0] put the prompt.  Let me guess shift removed it
> from the stack..
>
> I know that if I want the first variable of @answers I can call it with
> $answer[0], but why doesn't @answers[0]  work?
>
> Thanks so much
>
> On Friday 15 February 2002 02:49 pm, Wagner-David wrote:
> > Uncertain what you are trying to get from the list:
> >
> >       I changed print "$prompt [@_[0]]"; to print "$prompt $_[0]";
> >
> >       and if ( $response eq $answers ){ to if ( $response eq $answers[$i] ){
> >
> >       It ran without any warnings and after I gave correct answer, it quit.
> >
> > Wags ;)
> > -----Original Message-----
> > From: Steven M. Klass [mailto:[EMAIL PROTECTED]]
> > Sent: Friday, February 15, 2002 13:26
> > To: [EMAIL PROTECTED]
> > Subject: More help with my function
> >
> >
> > Hi all,
> >
> > Here is a simple script that I am having a heck of a time with.  I think it
> > will become apparent what I'm trying to do.  Ask a question and validate
> > the answer.
> >
> > &AskQuestion("Enter the hierarchical mode", my @hier = qw/inquiry smart
> > yes/);
> >
> > sub AskQuestion {
> >   my $prompt = shift;
> >   my @answers = @_;
> >   my $response;
> >   while ( ! $response ) {
> >     print "$prompt [@_[0]]";
> >     $response = <STDIN>;
> >     chomp $response;
> >     if ( $response eq "" ) {
> >       $response = @answers
> >     }
> >     if ( $response eq "?") {
> >       $response = "";
> >       print "Valid answers are: \n";
> >       print "@answers\n";
> >     }
> >       print "\n";
> >
> >     my $match;
> >     for ( my $i = 0; $i < @answers ; $i++ ){
> >       if ( $response eq $answers ){
> >         $match = "true";
> >         return $response;
> >       }
> >     }
> >     if ( ! $match ){ $response = "";}
> >   }
> > }
> >
> > I think it must be friday or something, but could someone help me clean
> > this up.  I want something simple, and I think I have over-engineered this.
> >  Any help is appreciated!
> >
> > Thanks so much.  I love this list!:)
>
> --
>
>  Steven M. Klass
>  Physical Design Manager
>
>  National Semiconductor Corp
>  7400 W. Detroit Street
>  Suite 170
>  Chandler AZ 85226
>
>  Ph:480-753-2503
>  Fax:480-705-6407
>
>  [EMAIL PROTECTED]
>  http://www.nsc.com
>
> --
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]


-- 
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to