2010-11-20 2 views
1

상황이 좀 이상하지만 나에게 곰이있다. 나는 C 언어 (cpp가 아니라)에서 쉽게 호출 할 수있는 스크립팅 언어가 필요하다. 바람직하게 스크립트 함수는 정규 C 함수로 호출 될 수 있습니다. 튜플을 사용하려면 스크립팅 언어가 필요합니다. 그래서 아래와 같이 작성할 수 있습니다. 내 말도 안돼, 난 그냥 튜플을 반환 할 수 있기를 바랍니다. , INT 또는 문자는 *해킹 C, C func 대신 스크립팅 func를 호출 하시겠습니까?

myfunc(a, b, c, d) { 
    a.b = b 
    a.z = anotherFunc(b,c) 
    return a, d 
} 
myfunc2(z) { 
    a, d = z 
    return d+4, a+1 
} 
+0

C 컴파일러가 스크립팅 기능, 즉 런타임에 정의되고 변경 가능한 경우 C 컴파일러가 'myfunc()'에 대해 어떻게 알기를 기대합니까? – Javier

답변

4

Lua 봐, 특히 API for calling from C를 타고 반환 형식은 PTR해야하며 모든 입력 중 하나를 무효 * (튜플)입니다. 당신은 당신이 필요로하는 것을 그것으로 할 수 있어야합니다.

+1

+1 루아는 가장 쉬운 C API를 가지고 있기 때문에 +1. – Javier

0

Ruby을 확인하십시오. 그것은 made for calling from C입니다 (C로 쓰여 있음). 인터페이스는 매우 쉽습니다. 게다가 루아와 달리 정말 강력한 언어가 붙어 있습니다. , INT 또는 문자 *

는 반환 형식이 PTR해야하며 모든 입력 중 하나를 무효 * (튜플)입니다 보너스로

, 그것은 밀접하게 지정된 함수 호출 인터페이스를 일치

Ruby의 함수 호출 인터페이스가 지원하는 것과 거의 같습니다.

관련 문제