QkParam
실수형 또는 기호형 값을 가질 수 있는 회로 매개변수를 나타냅니다.
Parameter현재 회로 QkParam 내의 기능성은 제한적이지만, 사용자는 에서 제공되는 것과 유사한 작업을 수행할 수 있습니다.
함수
qk_param_new_symbol
QkParam *qk_param_new_symbol(const char *name)
바인딩되지 않은 기호를 나타내는 새로운 QkParam 객체를 생성합니다.
예
QkParam *a = qk_param_new_symbol("a");안전
이 name 매개변수는 문자열 끝에 유효한 널 종결자가 포함된 메모리를 가리키는 포인터여야 합니다. 또한 이 값은 널 종결자를 포함하여 그 이전의 모든 바이트를 읽을 때도 유효해야 합니다.
매개변수
- 이름 – 심볼의 이름. 이 필드는 비워둘 수 없습니다.
리턴
QkParam생성된 파일에 대한 포인터.
qk_param_zero
QkParam *qk_param_zero(void)
값이 0인 새로운 QkParam 객체를 생성합니다.
이 함수가 반환하는 값은 QkParam 이항 연산이나 단항 연산의 결과를 저장하는 데 사용할 수 있습니다.
예
QkParam *t = qk_param_zero();
QkParam *a = qk_param_new_symbol("a");
QkParam *b = qk_param_new_symbol("b");
qk_param_add(t, a, b);리턴
QkParam생성된 파일에 대한 포인터.
qk_param_free
void qk_param_free(QkParam *param)
QkParam.을 풀어주세요.
예
QkParam *a = qk_param_new_symbol("a");
qk_param_free(a);안전
QkParam가 null이 아니거나 유효한 포인터가 아닌 경우 param , 동작은 정의되지 않습니다.
매개변수
- param – 해제할 메모리에
QkParam대한 포인터.
qk_param_from_double
QkParam *qk_param_from_double(double value)
double에서 새로운 QkParam 를 생성합니다.
예
QkParam *r = qk_param_from_double(2.5);매개변수
QkParam값 – A를double사용하여.를 초기화합니다.
리턴
QkParam생성된 파일에 대한 포인터.
qk_param_from_complex
QkParam *qk_param_from_complex(QkComplex64 value)
QkComplex64복소수 로 주어진 를 사용하여 새로운 QkParam 를 구성하라.
예
QkComplex64 c = {1.0, 2.0}; // 1 + 2i
QkParam *param = qk_param_from_complex(c);매개변수
QkParam값 – A를QkComplex64사용하여.를 초기화합니다.
리턴
QkParam생성된 파일에 대한 포인터.
qk_param_copy
QkParam *qk_param_copy(const QkParam *param)
QkParam.을 복사하세요.
예
QkParam *a = qk_param_new_symbol("a");
QkParam *b = qk_param_copy(a);안전
QkParam가 null이 아닌 객체를 가리키는 유효한 포인터가 아닌 경우 param , 동작은 정의되지 않습니다.
매개변수
- param – 복사할 대상
QkParam.
리턴
QkParam생성된 파일에 대한 포인터.
qk_param_str
char *qk_param_str(const QkParam *param)
QkParam의 문자열 표현을 가져옵니다.
예
QkParam *a = qk_param_new_symbol("a");
char* str = qk_param_str(a);
printf(str);
qk_str_free(str);
qk_param_free(a);안전
QkParam가 null이 아닌 객체를 가리키는 유효한 포인터가 아닌 경우 param , 동작은 정의되지 않습니다.
이 문자열은 일반적인 C 언어의 free 함수를 사용하여 해제해서는 안 되며, String이 차지하는 메모리를 해제하려면 반드시 를 사용해야 qk_str_free 합니다. 이 함수를 호출하지 qk_str_free 않으면 메모리 누수가 발생합니다.
반환된 문자열의 길이는 변경하지 마십시오(문자열 내부에 널 바이트를 삽입하거나 마지막 바이트를 제거하는 등의 방식으로). 단, 값 자체는 수정할 수 있습니다.
매개변수
QkParamparam –.에 대한 포인터
리턴
param의 문자열 표현을 담은 널 종료 char 배열에 대한 포인터.
qk_param_add
QkExitCode qk_param_add(QkParam *out, const QkParam *lhs, const QkParam *rhs)
QkParam2를 더하세요.
예
QkParam *a = qk_param_new_symbol("a");
QkParam *b = qk_param_new_symbol("b");
QkParam *out = qk_param_zero();
qk_param_add(out, a, b);안전
QkParam``out, lhs 또는 rhs 중 어느 하나라도 에 대한 유효하고 null이 아닌 포인터가 아닌 경우, 동작은 정의되지 않습니다.
매개변수
lhs + rhs``QkParam** out** – 의 결과를 저장할 포인터.QkParamlhs – 왼쪽 항을 가리키는 포인터.QkParamrhs – 우변을 가리키는 포인터.
리턴
성공 시에는 성공을, 그 외의 경우에는 오류를 나타내는 QkExitCode_Success 종료 코드입니다.
qk_param_sub
QkExitCode qk_param_sub(QkParam *out, const QkParam *lhs, const QkParam *rhs)
QkParam2를 빼세요.
예
QkParam *a = qk_param_new_symbol("a");
QkParam *b = qk_param_new_symbol("b");
QkParam *out = qk_param_zero();
qk_param_sub(out, a, b);안전
QkParam``out, lhs 또는 rhs 중 어느 하나라도 에 대한 유효하고 null이 아닌 포인터가 아닌 경우, 동작은 정의되지 않습니다.
매개변수
lhs - rhs``QkParam** out** – 의 결과를 저장할 포인터.QkParamlhs – 왼쪽 항을 가리키는 포인터.QkParamrhs – 우변을 가리키는 포인터.
리턴
성공 시에는 성공을, 그 외의 경우에는 오류를 나타내는 QkExitCode_Success 종료 코드입니다.
qk_param_mul
QkExitCode qk_param_mul(QkParam *out, const QkParam *lhs, const QkParam *rhs)
QkParam2를 곱하세요.
예
QkParam *a = qk_param_new_symbol("a");
QkParam *b = qk_param_new_symbol("b");
QkParam *out = qk_param_zero();
qk_param_mul(out, a, b);안전
QkParam``out, lhs 또는 rhs 중 어느 하나라도 에 대한 유효하고 null이 아닌 포인터가 아닌 경우, 동작은 정의되지 않습니다.
매개변수
lhs * rhs``QkParam** out** – 의 결과를 저장할 포인터.QkParamlhs – 왼쪽 항을 가리키는 포인터.QkParamrhs – 우변을 가리키는 포인터.
리턴
성공 시에는 성공을, 그 외의 경우에는 오류를 나타내는 QkExitCode_Success 종료 코드입니다.
qk_param_div
QkExitCode qk_param_div(QkParam *out, const QkParam *num, const QkParam *den)
a를 QkParam b로 나누세요.
예
QkParam *a = qk_param_new_symbol("a");
QkParam *b = qk_param_new_symbol("b");
QkParam *out = qk_param_zero();
qk_param_div(out, a, b);안전
QkParam``out, num 또는 den 중 어느 하나라도 에 대한 유효하고 null이 아닌 포인터가 아닌 경우, 동작은 정의되지 않습니다.
매개변수
lhs / rhs``QkParam** out** – 의 결과를 저장할 포인터.QkParamnum – 분자의 포인터.QkParamden – 분모를 가리키는 포인터.
리턴
성공 시에는 성공을, 그 외의 경우에는 오류를 나타내는 QkExitCode_Success 종료 코드입니다.
qk_param_pow
QkExitCode qk_param_pow(QkParam *out, const QkParam *base, const QkParam *pow)
a를 QkParam b제곱으로 곱한다.
예
QkParam *base = qk_param_new_symbol("a");
QkParam *pow = qk_param_new_symbol("b");
QkParam *out = qk_param_zero();
qk_param_pow(out, base, pow);안전
QkParam``out, base 또는 pow 중 어느 하나라도 에 대한 유효하고 null이 아닌 포인터가 아닌 경우, 동작은 정의되지 않습니다.
매개변수
lhs ** rhs``QkParam** out** – 의 결과를 저장할 포인터.QkParambase – 왼쪽 쪽을 가리키는 포인터.QkParampow – 우변을 가리키는 포인터.
리턴
성공 시에는 성공을, 그 외의 경우에는 오류를 나타내는 QkExitCode_Success 종료 코드입니다.
qk_param_sin
QkExitCode qk_param_sin(QkParam *out, const QkParam *src)
QkParam의 사인을 구하십시오.
예
QkParam *a = qk_param_new_symbol("a");
QkParam *out = qk_param_zero();
qk_param_sin(out, a);안전
QkParam또는 src 중 out 하나가 유효한, null이 아닌 포인터가 아닌 경우, 해당 동작은 정의되지 않습니다.
매개변수
sin(src)out – 결과를QkParam저장할 포인터.- src – 사인 함수를 적용할 대상에
QkParam대한 포인터.
리턴
성공 시에는 성공을, 그 외의 경우에는 오류를 나타내는 QkExitCode_Success 종료 코드입니다.
qk_param_cos
QkExitCode qk_param_cos(QkParam *out, const QkParam *src)
QkParam의 코사인을 구하십시오.
예
QkParam *a = qk_param_new_symbol("a");
QkParam *out = qk_param_zero();
qk_param_cos(out, a);안전
QkParam또는 src 중 out 하나가 유효한, null이 아닌 포인터가 아닌 경우, 해당 동작은 정의되지 않습니다.
매개변수
cos(src)out – 결과를QkParam저장할 포인터.- src – 코사인 함수를 적용할 대상에
QkParam대한 포인터.
리턴
성공 시에는 성공을, 그 외의 경우에는 오류를 나타내는 QkExitCode_Success 종료 코드입니다.
qk_param_tan
QkExitCode qk_param_tan(QkParam *out, const QkParam *src)
QkParam의 탄젠트를 구하십시오.
예
QkParam *a = qk_param_new_symbol("a");
QkParam *out = qk_param_zero();
qk_param_tan(out, a);안전
QkParam또는 src 중 out 하나가 유효한, null이 아닌 포인터가 아닌 경우, 해당 동작은 정의되지 않습니다.
매개변수
tan(src)out – 결과를QkParam저장할 포인터.- src – 접선을 적용할 대상에
QkParam대한 포인터.
리턴
성공 시에는 성공을, 그 외의 경우에는 오류를 나타내는 QkExitCode_Success 종료 코드입니다.
qk_param_asin
QkExitCode qk_param_asin(QkParam *out, const QkParam *src)
QkParam의 아크사인을 구하십시오.
예
QkParam *a = qk_param_new_symbol("a");
QkParam *out = qk_param_zero();
qk_param_asin(out, a);안전
QkParam또는 src 중 out 하나가 유효한, null이 아닌 포인터가 아닌 경우, 해당 동작은 정의되지 않습니다.
매개변수
asin(src)out – 결과를QkParam저장할 포인터.- src – 아크사인 함수를 적용할 대상에
QkParam대한 포인터.
리턴
성공 시에는 성공을, 그 외의 경우에는 오류를 나타내는 QkExitCode_Success 종료 코드입니다.
qk_param_acos
QkExitCode qk_param_acos(QkParam *out, const QkParam *src)
QkParam의 아크코사인을 구하십시오.
예
QkParam *a = qk_param_new_symbol("a");
QkParam *out = qk_param_zero();
qk_param_acos(out, a);안전
QkParam또는 src 중 out 하나가 유효한, null이 아닌 포인터가 아닌 경우, 해당 동작은 정의되지 않습니다.
매개변수
acos(src)out – 결과를QkParam저장할 포인터.- src – 코사인 함수를 적용할 대상에
QkParam대한 포인터.
리턴
성공 시에는 성공을, 그 외의 경우에는 오류를 나타내는 QkExitCode_Success 종료 코드입니다.
qk_param_atan
QkExitCode qk_param_atan(QkParam *out, const QkParam *src)
QkParam의 아크탄젠트를 구하십시오.
예
QkParam *a = qk_param_new_symbol("a");
QkParam *out = qk_param_zero();
qk_param_atan(out, a);안전
QkParam또는 src 중 out 하나가 유효한, null이 아닌 포인터가 아닌 경우, 해당 동작은 정의되지 않습니다.
매개변수
atan(src)``QkParam** out** – 결과를 저장할 포인터.- src – 아크탄젠트 연산을 적용할 대상에
QkParam대한 포인터.
리턴
성공 시에는 성공을, 그 외의 경우에는 오류를 나타내는 QkExitCode_Success 종료 코드입니다.
qk_param_log
QkExitCode qk_param_log(QkParam *out, const QkParam *src)
QkParam의 자연로그를 구하라.
예
QkParam *a = qk_param_new_symbol("a");
QkParam *out = qk_param_zero();
qk_param_log(out, a);안전
QkParam또는 src 중 out 하나가 유효한, null이 아닌 포인터가 아닌 경우, 해당 동작은 정의되지 않습니다.
매개변수
log(src)out – 결과를QkParam저장할 포인터.- src – 로그 연산을 적용할 대상에
QkParam대한 포인터.
리턴
성공 시에는 성공을, 그 외의 경우에는 오류를 나타내는 QkExitCode_Success 종료 코드입니다.
qk_param_exp
QkExitCode qk_param_exp(QkParam *out, const QkParam *src)
QkParam지수 함수를 에 적용하십시오.
예
QkParam *a = qk_param_new_symbol("a");
QkParam *out = qk_param_zero();
qk_param_exp(out, a);안전
QkParam또는 src 중 out 하나가 유효한, null이 아닌 포인터가 아닌 경우, 해당 동작은 정의되지 않습니다.
매개변수
exp(src)out – 결과를QkParam저장할 포인터.- src – 지수 함수를 계산할 대상에
QkParam대한 포인터.
리턴
성공 시에는 성공을, 그 외의 경우에는 오류를 나타내는 QkExitCode_Success 종료 코드입니다.
qk_param_abs
QkExitCode qk_param_abs(QkParam *out, const QkParam *src)
QkParam의 절댓값을 구하시오.
예
QkParam *a = qk_param_new_symbol("a");
QkParam *out = qk_param_zero();
qk_param_abs(out, a);안전
QkParam또는 src 중 out 하나가 유효한, null이 아닌 포인터가 아닌 경우, 해당 동작은 정의되지 않습니다.
매개변수
- out – 결과를 저장할
QkParam객체에 대한 포인터. - src –
QkParam에 대한 포인터.
리턴
성공 시에는 성공을, 그 외의 경우에는 오류를 나타내는 QkExitCode_Success 종료 코드입니다.
qk_param_sign
QkExitCode qk_param_sign(QkParam *out, const QkParam *src)
QkParam의 기호를 확인하세요.
예
QkParam *a = qk_param_new_symbol("a");
QkParam *out = qk_param_zero();
qk_param_sign(out, a);안전
QkParam또는 src 중 out 하나가 유효한, null이 아닌 포인터가 아닌 경우, 해당 동작은 정의되지 않습니다.
매개변수
sign(src)out – 결과를QkParam저장할 포인터.- src – 부호를 확인하려는 값을
QkParam가리키는 포인터.
리턴
성공 시에는 성공을, 그 외의 경우에는 오류를 나타내는 QkExitCode_Success 종료 코드입니다.
qk_param_neg
QkExitCode qk_param_neg(QkParam *out, const QkParam *src)
QkParam.을 부정하다.
예
QkParam *a = qk_param_new_symbol("a");
QkParam *out = qk_param_zero();
qk_param_neg(out, a);안전
QkParam또는 src 중 out 하나가 유효한, null이 아닌 포인터가 아닌 경우, 해당 동작은 정의되지 않습니다.
매개변수
-srcout – 결과를QkParam저장할 포인터.- src – 반전할 대상에 대한
QkParam포인터.
리턴
성공 시에는 성공을, 그 외의 경우에는 오류를 나타내는 QkExitCode_Success 종료 코드입니다.
qk_param_conjugate
QkExitCode qk_param_conjugate(QkParam *out, const QkParam *src)
QkParam의 복소공액값을 구하라.
예
QkParam *a = qk_param_new_symbol("a");
QkParam *out = qk_param_zero();
qk_param_conjugate(out, a);안전
QkParam또는 src 중 out 하나가 유효한, null이 아닌 포인터가 아닌 경우, 해당 동작은 정의되지 않습니다.
매개변수
conj(src)out – 결과를QkParam저장할 포인터.- src – 변환할 대상에
QkParam대한 포인터.
리턴
성공 시에는 성공을, 그 외의 경우에는 오류를 나타내는 QkExitCode_Success 종료 코드입니다.
qk_param_equal
bool qk_param_equal(const QkParam *lhs, const QkParam *rhs)
두 QkParam 개를 비교하여 같는지 확인하십시오.
예
QkParam *a = qk_param_new_symbol("a");
QkParam *one = qk_param_from_value(1.0);
QkParam *mone = qk_param_from_value(-1.0);
QkParam *x = qk_param_add(a, one);
QkParam *y = qk_param_sub(a, mone);
bool equal = qk_param_equal(x, y);안전
QkParam또는 rhs 중 lhs 하나가 유효한, null이 아닌 포인터가 아닌 경우, 해당 동작은 정의되지 않습니다.
매개변수
QkParamlhs – 왼쪽 항을 가리키는 포인터.QkParamrhs – 우변을 가리키는 포인터.
리턴
true 객체들이 QkParam 같으면, false 그렇지 않으면.
qk_param_as_real
double qk_param_as_real(const QkParam *param)
double를 QkParam 로 캐스팅해 보세요.
double바인딩되지 않은 매개변수가 있어 매개변수를 로 형변환할 수 없는 경우, NAN 가 반환됩니다. 복소수를 표현할 때는 QkParam 실수부가 반환된다는 점에 유의하십시오.
예
QkParam *a = qk_param_new_symbol("a");
QkParam *b = qk_param_new_symbol("b");
QkParam *x = qk_param_zero();
qk_param_add(x, a, b);
const QkParam* keys[2] = {a, b};
QkParam *y = qk_param_zero();
qk_param_bind(y, x, keys, {1.0, 2.0}, 2);
double out = qk_param_as_real(y);안전
QkParam가 유효하고 null이 아닌 포인터가 아닌 경우 param , 해당 동작은 정의되지 않습니다.
매개변수
- param – 평가할 대상에
QkParam대한 포인터.
리턴
변환에 성공한 경우 해당 값, 그렇지 않으면 NAN.