在开发ESP8266的时候,没发现此问题,在调试ESP32的时候发现反复重启。问题出现在sprintf中
举例划重点:
char *s1 = “JIUAI.LTD”;
char s2[] = “JIUAI.LTD”;
char *s1 的s1,而指针是指向一块内存区域,它指向的内存区域的大小可以随时改变,而且当指针指向常量字符串时,它的内容是不可以被修改的,否则在运行时会报错。
char s2[]的s2 是数组对应着一块内存区域,其地址和容量在生命期里不会改变,只有数组的内容可以改变
修改之前:
char* times="00:00:00";
char* dates="0000-00-00";
char* datetime="0000-00-00 00:00:00";
修改之后: