perl 输入流问题 新手搞不懂了 求大神解惑

#!/usr/bin/perl -w
print "input a number:";
chomp(my $line=);
print "input some string";
chomp(my @data=);
foreach(@data){
printf "%${line}s\n",$_;
}

我想要的是先输入一个数字,然后输入多行字符串,然后打印出来
为什么执行结果不对呢

3个回答

#!/usr/bin/perl -w
print "input a number:";
chomp(my $line=<>);
print "input some string";
chomp(my @data=<>);
foreach(@data){
printf "%${line}s\n",$_;
}
输入完字符串后,linux下按再按回车(windows下按Ctrl+z),就可以打印输入的内容了。

qq_38215692
qq_38215692 回复鱼在沙漠: 没事了 环境有问题 我在家里电脑上同样的代码就没毛病了....还是谢谢啦老哥
一年多之前 回复
zlin532
鱼在沙漠 回复qq_38215692: 不太明白你的需求,是先输入一个数字,然后输入对应数字的字符串,然后把输入内容打印出来吗?
一年多之前 回复
qq_38215692
qq_38215692 输入数字没有执行是怎么回事喃 执行之后直接就让输入字符 然后我ctrl+z 回车 就会报错 $line没有值
一年多之前 回复

#!/usr/bin/perl -w
print "input a number:";
chomp(my $line=);
print "input some string";
chomp(my @data=);
foreach(@data){
printf "%${line}s\n",$_;
}

linux下按Ctrl+D再按回车,windows下按Ctrl+z加回车,表示输入结束

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!