指定された文字列をフォーマットして印刷しようとしています。それは仕事をしません。それはエラーを与える任意のアイデア?C Sprintfフォーマットエラー
char* query_buffer;
sprintf(query_buffer,"%02x:%02x:%02x:%02x:%02x:%02x:%02x:%02x;%u.%u.%u.%u;%d\n",
node_config->mac_address.addr[0], node_config->mac_address.addr[1], node_config->mac_address.addr[2], node_config->mac_address.addr[3],
node_config->mac_address.addr[4], node_config->mac_address.addr[5], node_config->mac_address.addr[6], node_config->mac_address.addr[7],
ip64_addr->u8[0], ip64_addr->u8[1], ip64_addr->u8[2], ip64_addr->u8[3],
node_config->coap_port);
printf("%s\n",query_buffer);
私は以下のprintfを試してみてください。私はこれらの2つをすることの間に何が違うのか理解できませんでした。
printf("%02x:%02x:%02x:%02x:%02x:%02x:%02x:%02x;%u.%u.%u.%u;%d\n",
node_config->mac_address.addr[0], node_config->mac_address.addr[1], node_config->mac_address.addr[2], node_config->mac_address.addr[3],
node_config->mac_address.addr[4], node_config->mac_address.addr[5], node_config->mac_address.addr[6], node_config->mac_address.addr[7],
ip64_addr->u8[0], ip64_addr->u8[1], ip64_addr->u8[2], ip64_addr->u8[3],
node_config->coap_port);
最後の '%u;%d'は疑わしいと思われます。あなたは '%u:%d'を意味しましたか?あなたは*データ*とMCVEを投稿して、誰でも明確な答えを出す必要があります。参照してください:[**最小限の、完全で検証可能なサンプルの作成方法**](http://stackoverflow.com/help/mcve)。 –