2017-02-19 14 views
-2

Im чтение текста на SD-карте. Вот код:Преобразование char cr в int

void Readline(){ 
    myFile.seek(0); 
    char cr; 
    for(unsigned int i = 0; i < 0;){ 
    cr = myFile.read(); 
    if(cr == '\n') 
     { 
     i++; 
     } 
    } 
    while(true){ 
    cr = myFile.read(); 
    if((cr == '\n')||(cr == '\r')||(cr < 0)) 
    break; 
    Serial.println(cr); 
    } 
} 

Как преобразовать char 'cr' в integer?

+1

Этот вопрос является неполным: вы хотите, чтобы преобразовать ' '9'' в' 57' или '9 '? Кроме того, вы хотите обрабатывать последующие цифры, например. '13', как отдельные значения или один? –

+0

Значение, записанное на SD-карте, составляет 6,25 символов. Как я могу прочитать значение и преобразовать его в тип float как одно значение? – bembe24

+1

Тогда ваш вопрос неверен: '6.25' не * char type *, а заголовок говорит' int', а не 'float'. Вы должны выполнить свою задачу. Сначала: получите строку, содержащую '6.25', либо типа' char * ', либо' String', Second: преобразуем такую ​​строку в 'float'. –

ответ

-1

Попробуйте с cr.toInt();

.toInt() команда преобразует строки в целые числа

Для получения дополнительной информации смотрите здесь: https://www.arduino.cc/en/Tutorial/StringToIntExample

+0

запрос для члена 'toInt' в 'cr', который относится к классу non-class 'char' – bembe24

+0

Он дает мне это сообщение – bembe24

+0

или как я могу преобразовать char в String? – bembe24