※ 引述《pangfeng (Ikari Gendou)》之铭言:
: ※ 引述《cebrusfs (可鲁贝洛斯)》之铭言:
: : 目前看到不少本机编译会过,但是上传上去却黄牌。
: : 得到的是使用了被禁止的函式。
: : 似乎很多人都使用DevC++去写程式,
: : 为了防止程式关闭,坊间和网络上都会教你使用
: : system("pause");
: : 可是这东西不太健康....
: : 另外judgegirl为了安全性问题封锁掉了system,这会造成Compile Error....
: : 搭上红黄牌系统就很悲剧。
: : 重点来了,
: : 我其实建议大家把,
: : system("pause");
: : 换成,
: : scanf(" ");
: : 会有一样的效果,而且输入个乱七八糟的东西(非换行和空白)就会关掉了,
: : 算颇方便的。
: : 忘记砍掉,直接传到judgegirl也不会有事。
: : 原理就不解释了,有兴趣在自己问强者,不一定是问我,
: : 这招大部份的强者都会啦......算是竞赛小技巧了。
: 我希望大家用命令列的原因是因为这样最单纯.
: 而且不会用命令列, 将来 argc argv 命令列参数要怎么教???
: 将来在 UNIX 怎么写系统程式?
: 不会用命令列 -> 用 DevC++ 之类的 IDE -> 看不到结果 -> 加 system("pause);
: -> 卡住批改娘, 被禁用 -> 改用 scanf(" "); -> ???
: 如果一开始就用命令列, 这些问题就没有了.
: 为了一个问题, 发展出一个绝招, 然后造成另一个问题, 然后继续下去.
: 使用 system("pause") 及 scanf(" ") 有多少人搞得清楚他们的含意?
: 有多少人搞得清楚为何输入个乱七八糟的东西(非换行和空白)就会关掉,
: 但送到批改娘不会卡住? 这些网络上流传的招式让人知道效果,
: 不知原因, 因为人家这样做, 所以我也这样做, 在我看来是很奇怪的.
: 我认为要学好程式, 必须清楚的知道你所写的每一个字符到底在干嘛.
: 那就按步就班, 彻底了解你所下的每一个指令.
: 不要写一些你自己都不知道在作什么的东西.
: 因为难保将来这些东西在某些状况下也会出问题, 到时你怎么修一个你根本不懂的东西?
: 还是说再等强者发明一个你还是不懂的绝招, 解决你现在不懂的问题?
最近发了不少红黄牌. 请了解发牌的动机不是要和你为难, 而是希望你养成良好的习惯.
上课时说得很清楚了. 请先写到没有编译错, 同时标准测资会过再送.
三令五申不希望你用 system("pause"), local 端测到没问题再送.
如果还是不能做到, 我只好发红牌, 请你下次注意.
以上.