linux 怎么通过输入重定向符: < 向c语言源程序输入数据

![img](https://img-mid.csdnimg.cn/release/static/image/mid/ask/419479100056117.png "#left
其中date1.in是保存的数据,temp.c是C语言源程序,为什么无法成功向源程序成功输入数据呢?

你这个应该是没有编译,首先要对temp.c编译,然后生成一个可执行的文件out:

gcc temp.c

然后执行该文件到data1.in即可:

./out < data1.in

那就使用命令行参数输入数据

没有这样的语法,你只能cat data1.in > temp.c来把data1.in的内容输出到temp.c,

左边的参数要是一个命令,有用希望采纳

temp.c 还没有编译吧,如果是可执行程序需要加执行权限"chmod +x 可执行文件"
语法并不是有什么问题

img

像二楼说的cat data1.in > temp.c,如果提示权限不够尝试切换到root进行操作

使用这个”< input”。input是一个文件,里面写你的代码参数。
举例:./add < input

Linux标准输入、重定向与参数传递_Xilaii的博客-CSDN博客_linux的标准输入与参数 Linux标准输入、重定向与参数传递原文链接:Linux标准输入、重定向与参数传递笔者按:笔者是某非计算机工科专业研究生,目前在准备转向后端开发工作。以前虽对Linux编程有所接触,刚开始系统学习不久,知识尚浅,困惑很多。特开此专栏,记录笔者转码之路中遇到的问题及解决、学习和思考的结果。一为整理自己的知识体系,二为与前辈和同好交流分享,温故知新。如果发现文中理解有不足或者错误,万望批评指正,不胜感激!以下是正文:按惯例,每当运行一个新程序时,所有shell都为其打开3个文件描述符,即标准输 https://blog.csdn.net/qq_37957347/article/details/111303771