#ifndef _QUEUELIST.H
#define _QUEUELIST.H
#include <Arduino.h>
struct node {
char question[16];
node * yes;
node * no;
}node;
struct node initlist(char quest[]){
struct node head;
strcpy(head.question,quest);
head.yes=NULL;
head.no=NULL;
return head;
}
void addyes (struct node n, char quest[]){
struct node tnode;
strcpy(tnode.question,quest);
tnode.yes=NULL;
tnode.no=NULL;
n.yes=&tnode;
}
void addno (struct node n, char quest[]){
struct node tnode;
strcpy(tnode.question,quest);
tnode.yes=NULL;
tnode.no=NULL;
n.no=&tnode;
}
#endif
void setup() {
struct node top;
struct node *temp; //using this to traverse the tree keeping top as my handle
top = initlist ("does it turn on?");
temp = ⊤
addyes(top, "blue screen?");
addno(top, "power light on?");
temp=top.yes;
addyes(*temp, "test memory");
}
приведенный выше код - это то, что я пытаюсь реализовать для своего кода. в основном я пытаюсь сделать шутер «да/нет» для ноутбуков. он не собирается делать по-настоящему глубоко проблемную съемку, а только что-то, что может запускать средний конечный пользователь, который знает, как жить с загрузкой компакт-диска. Я просто пытаюсь настроить дерево решений.Я на правильном пути здесь с моим деревом решений? arduino
Я просто хочу убедиться, что я нахожусь на правильном пути мысли для этого проекта. и убедиться, что я не возился. У меня еще нет платы для ввода/вывода, и я просто изучаю, сколько места мне нужно для этого на чипе.
просто мысль, могу ли я запустить этот код в компиляторе c, чтобы убедиться, что внутренняя структура на самом деле запрограммирована правильно? Я знаю, что функции arduino не работают, но я не понимаю, почему дерево не работает.
спасибо за помощь
спасибо за эту поправку, я знал, что я должен был быть что-то отсутствует я также забыть что-то подобное. Я тоже волнуюсь, я не использовал никаких новых/malloc. я понимаю, с такой небольшой памятью arduino's, что это не очень хорошо использовать правильно? –
Хорошо использовать новый/malloc, но вам нужно эффективно управлять памятью кучи. Проще работать только с памятью стека, если у вас нет необходимости ускорять или уменьшать занимаемый объем памяти. – Idipaolo
Обсуждается использование malloc в arduino [здесь] (http://arduino.stackexchange.com/questions/682/is-using-malloc-and-free-a-really-bad-idea-on-arduino) в Arduino SE site – hithwen