我知道C程序通常以return结束,我们返回程序的状态.但是,我想返回一个字符串.原因是,我将从shell脚本调用C-executable并打印返回的字符串.有没有相同的机制?
你不能.
你能做的最好的事情就是在某处写字符串(标准输出,标准错误或某些文件); 那么shellscript会从那里得到你的字符串.
标准输出(因此仅使用a printf)可能是最好的解决方案,因为从C程序打印字符串将非常容易,并且shellcript非常容易获取该数据:
从shell脚本:
STRING="$( ./your_program argv1 argv2 )"
Run Code Online (Sandbox Code Playgroud)