C 프로그램의 리턴 값을 shell로 넘기는 방법.

MythRab의 이미지

C 에서 리턴한 값은 쉘에서 쓸 수 있다고 알고있는데요.
단항값(return 100)이 아닌 여러개의 인수를 넘기는 방법이 있을까요.
말하자면 한번의 리턴으로 '10 5 4 40 9' 이러한 형태의 것을 한번에 받을 수 있는 방법이요.
음... 제가 쓰고나서 좀 말이 안되는 것 같지만 방법이 있을지도 모른다는 생각에...
아님 다른 방법이라도...

kernelpanic의 이미지

흠..

혹시 putenv() 같은 건 어떨까요?

pynoos의 이미지

불행히도 없습니다.

아무리 찾아 보셔도 불가능합니다. :(

오직 exit 정수 값 ($? 으로 알 수 있는)만 넘길 수 있습니다.

ㅡ,.ㅡ;;의 이미지

무엇을 하려는지 몰라도.
그냥 쉘에뿌리는걸 쉘이 받으면되죠..
뿌리는거 다 받아서 알아서 사용하면되는데..쩝..


----------------------------------------------------------------------------

cdpark의 이미지

정수가 아닌 값을 돌려주려면 stdout으로 찍으신 후에 shell에서는

return = `program`

식으로 받는 수 밖에 없습니다. (많이 쓰는 방식인데.. :( )