2013-07-09 4 views
-1

Я работаю с Eclipse и Arduino.Добавление символа в строку в C++

Я хочу добавить символ в строку. Я попытался использовать append, insert (но они не могут быть разрешены) Я попытался использовать + =, но когда я печатаю строку, у нее всегда есть один символ. Как правило, я удаляю строку и записываю только новый символ, который я хочу добавить в Я тоже попытался выполнить concit, и он делает то же самое. Также strcat дает мне головную боль с операндами, потому что ему нужен указатель const char, и я хочу добавить символ, который изменяется.

while (theSettings.available()) { 

character = theSettings.read(); 
if(character == '/')   { 
    // Comment - ignore this line 
    while(character != '\n'){ 
     character = theSettings.read(); 
    } 
} else if(isalnum(character)){ // Add a character to the description 

    Serial.println(character); 

    description +=character; 
    //description.concat(character); 
    Serial.println(description); 
} 
+0

Это не C, но C++. –

+3

Какой тип 'описания'? – jrok

+0

Кстати, это не имеет ничего общего с Eclipse. Ваш код неисправен, а не IDE. Вы получили бы ту же самую ошибку, если бы вместо Eclipse использовали 'vi' и' make' или 'emacs'. –

ответ

1

Если description имеет Ardunio специфичной String типа, вы должны быть в состоянии использовать оператор += для добавления.

+0

Я пытался, но когда я печатаю строку, я получаю один символ всегда, он просто повторяет его – kyrpav

0

Вы можете сделать очень простую вещь;

Serial.print(character); 
Serial.print(""); 
Serial.println(description); 

в качестве альтернативы вы можете использовать «dtostrf», если вам нужно сцепить поплавок и строки

Смежные вопросы