Помогите с программой

Тема в разделе "Arduino & Shields", создана пользователем MilkyWay, 27 ноя 2016.

  1. MilkyWay

    MilkyWay Нерд

    Как разбить строку 30,root,1279 на 3 переменные
    id = 30;
    user = root;
    user_sensor = 1279;

    Помогите пожалуйста!
     
  2. Vetrinus

    Vetrinus Гик

    Код (C++):
    char buffer[buffer_length] = "30,root,1279";
    int id, user_sensor;
    char user[];
    char* ptr = strtok(buffer, ",");
    id = atoi(ptr);
    ptr = strtok(buffer, ",");
    user = ptr;
    ptr = strtok(buffer, ",");
    user_sensor = atoi(ptr);
     
    Tomasina нравится это.
  3. Tomasina

    Tomasina Сушитель лампочек Модератор

    а не жирно ли int для этого?
     
  4. Vetrinus

    Vetrinus Гик

    Ну, на поле id, есть вероятность, что да, жирно. Но их (id) может вполне может быть больше, чем помещается в byte. А на user_sensor byte не хватит в любом случае. Вообще, ТСу видней. Мы можем только предполагать о том, как у него обстоят дела.
     
  5. MilkyWay

    MilkyWay Нерд

    Нет не жирно, id может быть до 15000, решил спросить т. к. Arduino моло знаю в основном работают на Python, Java, и немного C
     
  6. MilkyWay

    MilkyWay Нерд

    Спасибо!