va_list + va_start + va_arg를 통해 여러 인수를 지원하는 멋진 C++ 함수가 있습니다. 하지만 난 내 프로젝트를 C로 변환했다. 변환 후,이 va_list 건설 (여러 오류) 컴파일러에 의해 거부 가져옵니다. C에서 그 일을 할 수있는 방법이 있습니까? (그렇다면) 내가 바꿀 필요가있는 것이 있습니까?
NSString의 stringWithFormat: (varargs)와 같은 서명을 가지고 싶습니다만, stringWithFormat:을 전달하기 전에 각 인수를 URL 인코딩하고 싶습니다. 그 자체. 이미 인코딩을 수행하는 + (NSString *)urlEncode:(NSString *)s 메서드가 있습니다. 인코딩 된 인수를 사용하여 va_list를 작성
가 나는 누군가가 두 개의 인수없이 호출하면 컴파일시 오류가 만들고 싶어 AddSprintf(char* , ...)
같은 기능이 필요합니다. 현재 누군가 전화하는 경우 AddSprintf("hello")
이 작동합니다. 그러나 나는 이렇게 부르는 것을 무능하게하고 싶다. g ++을 사용하는 방법이 있습니까? 인수를 강제로 전달할 수 있습니까?
Mac OS X Snow Leopard에서 xcode 4를 사용합니다. 일부 숫자를 제외하고 한 간격 내에서 임의의 숫자를 생성하는 함수를 작성하려고합니다. 예 : 이것은 1 (100) 내의 숫자를 생성해야 int num=5;
random(time(NULL),1,100,&num,NULL);
, 5 를 제외하고는 그래서이 코드를 작성했습니다 : //
나는 3 개 값 사이에 최소를 찾을 필요, 나는이 같은 일을 결국 :이 Math.Min(Math.Min(val1, val2), val3)
그냥 나에게 조금 바보 같다, 다른 언어는이를 위해 가변 기능을 사용하기 때문이다. 나는 이것이 비록 감독 이었는지는 의심 스럽다. 간단한 Min/Max 기능이 가변적 인 이유는 무엇입니까? 성능에 영향이 있습니까?
기본적 I가 위치 ArrayList를 가지고하여 getMap() 메소드 .getMap();
파라미터 것이있다 : getMap(WorldLocation... locations)
문제는 그 방법으로 locations의 전체 목록을 전달하는 방법을 모르겠다는 것입니다. 나는 .getMap(locations.toArray())
을 시도했지만하여 getM
에서 다른 방법으로 인수의 변수 납입을 전달 I했습니다 (예를 목적으로 단순화) 다음 코드를 가지고와 그것을 작동 : log_err("test: %d", 5);
: 이 void log(const string type, const string msg, va_list argp)
{
fprintf(stdout, "[%s] ", type.c_str(
자바 리플렉션을 사용하여 가변 arity 메소드를 호출 할 때 어떤 일이 벌어지고 있는지 이해하고 싶습니다. 이제 우리는 간단한 방법이 있다고 가정 해 봅시다 : void doAllTheThings(Object ... things) {
// ...which does something with all the things...
}
을 우리가 동적