本文整理汇总了C++中StringBuffer::appendSprintf方法的典型用法代码示例。如果您正苦于以下问题:C++ StringBuffer::appendSprintf方法的具体用法?C++ StringBuffer::appendSprintf怎么用?C++ StringBuffer::appendSprintf使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类StringBuffer
的用法示例。
在下文中一共展示了StringBuffer::appendSprintf方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: leadIncoming
// process a packet from HQ
void leadIncoming(const char *packet, size_t len, unsigned short *index) {
char *type, *command, *buffer;
buffer = (char*)malloc(len);
memcpy(buffer, packet, len);
uint16_t to;
unsigned long id;
type = j0g_str("type", buffer, index);
if (hqVerboseOutput) {
Serial.println(type);
}
if (strcmp(type, "online") == 0) {
Shell.allReportHQ();
}
if (strcmp(type, "command") == 0) {
to = atoi(j0g_str("to", buffer, index));
id = strtoul(j0g_str("id", buffer, index), NULL, 10);
command = j0g_str("command", buffer, index);
if (strlen(j0g_str("to", buffer, index)) == 0 || !id || !command) {
if (hqVerboseOutput) {
Serial.println(F("invalid command, requires to, id, command"));
Serial.print(F("to: "));
Serial.println(to);
Serial.print(F("id: "));
Serial.println(id);
Serial.print(F("command: "));
Serial.println(command);
}
free(buffer);
return;
}
// handle internal ones first
if (to == Scout.getAddress()) {
setOutputHandler(&printToString<&leadCommandOutput>);
doCommand(command);
resetOutputHandler();
StringBuffer report;
report.appendSprintf("{\"type\":\"reply\",\"from\":%d,\"id\":%lu,\"end\":true,\"reply\":", to, id);
report.appendJsonString(leadCommandOutput, true);
report += "}\n";
leadSignal(report);
leadCommandOutput = (char*)NULL;
free(buffer);
return;
}
// we can only send one command at a time
if (leadCommandTo) {
// TODO we could stop reading the HQ socket in this mode and then never get a busy?
free(buffer);
return leadCommandError(to,id,"busy");
}
// send over mesh to recipient and cache id for any replies
leadAnswerID = id;
leadCommandTo = to;
leadCommandChunks = command;
leadCommandChunksAt = 0;
leadCommandRetries = 0;
leadCommandChunk();
}
free(buffer);
}
示例2: report
// [3,[0,1,2],[v,v,v],4]
StringBuffer ScoutHandler::report(StringBuffer &report) {
report.setCharAt(report.length() - 1, ',');
report.appendSprintf("%lu]",millis());
Scout.handler.announce(0xBEEF, report);
return report2json(report);
}