나는 인자로서 문자 배열 (즉, 문자열)을 받아들이는 함수를 가지고있다.C에서 이와 같이 문자열을 전달하는 방법이 있습니까?
그러나 정수 변수의 값은 문자열의 일부로도 인쇄해야합니다. 예를 들어
, 나는이 같은 함수가있는 경우 :
int var=10;
void printStr(char str[])
{
printf("%s", str);
}
을 나는 메시지 VAR의
"값으로 정수 변수 'VAR'의 값을 인쇄해야 % d 개 ", VAR
이다 나는이
시도하지만 작동하지 않았습니다.
변수를 인수로 printStr()
에 전달하지 않고이를 수행 할 수있는 방법이 있습니까?
이 경우 출력은
VAR의 값은 당신이 문자열의 생성을 위해 기능
sprintf
/snprintf
필요 것 같다 (10)
@Ilya 그게 좋은 것입니다. 그러나 함수에 전달하기 위해 문자열을 만들지 않고이 작업을 수행 할 수있는 방법이 있습니까? –
@J ... S 하나의 인수 (문자열) 만 허용되면 문자열을 만들어야합니다. 여기서 뭔가를 바꿀 수 있다면 (예를 들어,'struct'에 string과 int 두 값을 모두 포함 할 수 있다면)'sprintf' /'snprintf'없이 할 수 있습니다. – Ilya
@J ... S 아니요, 문자열 형식 지정은 함수를 호출하여 엄격하게 수행됩니다. 예를 들어 다음과 같은 언어로 처리 할 연산자가 없습니다. 파이썬. – unwind