Guys perl is not as easy i thought its so confusing thing.I just moved to operators and I wrote some codes but I am unable to figure it out how the compiler treating them.
$in = "42" ;
$out = "56"+32+"good";
print $out,;
The output for above code is 88 and where does the good gone? and Now lets see the other one.
$in ="42";
$out="good52"+32;
print $out ;
and for these the output is 32. The question is where does the good gone that we just stored in $out and the value 52 between the ” “why the compiler just printing the value as 32 but not that remaining text.And the other question is
$in=52;
$in="52";
both doing the same work “52” not working as a text . becuase when we add “52”+32 it gives as 84. what is happening and
$in = "hello";
$in = hello;
both do the same work ? or do they differ but if i print then give the same output.Its just eating up my brain.Its so confusing becuase when “52” or 52 and “hello” or hello doing the same job why did they introduce ” “.I just need the explaination why its happening for above codes.
If you put:
At the top of your script, you would get warnings such as:
Perl automatically reassigns a string value to numeric, if possible. So “42” + 10 actually becomes 52. But it cannot do that with a proper string value, such as “good”.