将char []与另一个char []连接

时间:2017-11-30 17:53:30

标签: c char arduino-ide progmem

我正在使用Arduino IDE完成Sketch并且能够在UNO上运行它,我必须使用C char[]。这对我来说并不容易,不久之前我就已经问过这个问题了。

我需要通过连接较小的部分来创建更长的char[]。到目前为止,我已经能够做到这样:

//Declarations 

    #define TARGET_IP "184.106.153.149"

//Methods

    void randomMethod(){

     strcpy(foo, "AT+CIPSTART=\"TCP\",\"");
     strcat(foo, TARGET_IP);
     strcat(foo, "\",80\r\n");
     Serial.println(foo);

    }

然而在我的代码中我有很多静态字符串占用大部分2K RAM内存,所以我想使用PROGMEM 所以我尝试了以下内容:

//Declarations

#define TARGET_IP "184.106.153.149"

static const char targetIp[] PROGMEM = TARGET_IP;


//Methods

void randomMethod(){

         strcpy(foo, "AT+CIPSTART=\"TCP\",\"");
         strcat(foo, targetIp);
         strcat(foo, "\",80\r\n");
         Serial.println(foo);

        }

在串行监视器上打印时,第一个片段工作正常,而第二个片段则不然。

我一直试图谷歌,但无济于事。

你们和gals的任何进一步教育都会非常感激。 提前谢谢!

0 个答案:

没有答案