内容与要求:
一:编写一个函数,这个函数能实现对.txt格式的文件的运行,这个文件其实就是等待测试的源程序代码,也就是.c文件;
二:编写一个函数要求用一个命令行调用第一步中的.txt文件,并编译这个源程序,看是否能成功编译并产生一个可执行文件.exe;
三:若第二步的编译成功,则进行运行,并调用(需要调用多次)盛放测试数据的文件,使每一次运行的结果与相对应的测试数据一一比较,可能需要删除空格换行等字符,以避免因输出格式不同而产生的错误;
四:返回程序的最终结果,第二步编译是否成功,若失败,则返回错误是什么,第三步多组测试数据中对于哪些测试数据是对的,哪些是错的,并各自返回;
五:安全问题:
第一点:是否有木马程序,检测程序有无病毒;有病毒时要阻止程序的编译和运行,以防系统遭到攻击,并返回错误;
第二点:待测试的程序是否有死循环,即限制程序的运行时间,超过这个限制时间则自动跳出循环,返回错误;
就是这五步,其中可能会有些不规范的描述;
亲,你说的和我老师说的一般无二,我想请你帮我写一些代码可以吗,你说的比如>和<我都不懂得,O(∩_∩)O谢谢了
追答比如你一个可执行程序是my_exe,那么在命令行里运行
my_exe 2.txt
就表示在运行my_exe时scanf、gets之类原来从键盘读取的函数改成从文件1.txt读取,而用printf、puts等输出到命令行的函数改成输出到文件2.txt中。
至于makefile的写法,网上搜一下,挺多的。
这里要用到的知识点有点多,如果你还没了解过的话,可以一步一步学。