谁能告诉我这意味着什么: "%.*s"
例如,它在这里使用:
sprintf(outv->deliveryAddressCity,
"%.*s",
sizeof(outv->deliveryAddressCity)-1,
mi->deliveryAddressCity);
Run Code Online (Sandbox Code Playgroud)
%.*s表示从以下缓冲区打印前X个字符.在这种情况下,打印第一个sizeof(outv->deliveryAddressCity) - 1字符mi->deliveryAddressCity,防止写入超出范围outv->deliveryAddressCity.
一个较短的例子:
printf("%.*s", 4, "hello world");
Run Code Online (Sandbox Code Playgroud)
会打印hell.