2014-08-31 45 views
0

我無法將字符數組複製到String。下面這行工作正常:字符串在運行時字符數組?

String packetBufferString(packetBuffer); 

但很明顯,我能做到這一點只有一次,因爲packetBufferString必須是全球性的,並不能再次申報。問題是packetBuffer在運行時發生更改,但我無法更新packetBufferString

的字符數組設置了

char packetBuffer[UDP_TX_PACKET_MAX_SIZE]; 

LG,couka

+0

此代碼看起來像是Java和C++的混合。你的意思是std :: string嗎?目前還不清楚被問到/問題是什麼。 – 2014-08-31 21:54:09

+1

@MichaelAaronSafyan他們的意思是['arduino String'](http://arduino.cc/en/Reference/StringObject)。 – juanchopanza 2014-08-31 21:59:41

+0

避免使用字符串,如果你可以在Arduino上。 – Hellonearthis 2014-09-01 09:24:56

回答

0

如果Stringstd::string,那麼你可以寫

std::string packetBufferString(packetBuffer); 

// 

packetBufferString.assign(packetBuffer); 

std::string packetBufferString(packetBuffer); 

// 

packetBufferString = packetBuffer; 

假定packetBuffer是零終止的。否則,您可以執行相同的操作(即分配),但使用初始和結束迭代器的代碼如下:packetBuffer