Pages: [1]   Go Down
Author Topic: struct e funzioni  (Read 1000 times)
0 Members and 1 Guest are viewing this topic.
Campagne Aretine
Offline Offline
God Member
*****
Karma: 0
Posts: 816
Arduino è una figata
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ho bisogno di creare una struct e ho trovato qualcosa ma non sono certo di aver capito come funziona.

http://www.arduino.cc/playground/Code/Struct#Description

Tutto parte dal bisogno di avere una funzione che mi restituisca 2 valori, un booleano e un intero. Allora ho pensato di fare una struttura,  ma devo mettere una libreria o qualcosa del genere?

mi sapete dare qualche consiglio? scusate magari è una cavolata ma sono una capra in programmazione...

EDIT sono riuscito a creare la struttura ma ora non saprei modificare i dati all'interno... devo fare 2 funzioni vero? una che mi restituisce un booleano e una che mi restituisce un intero, vero?

EDIT2 forse dovrei usare windows?
« Last Edit: February 17, 2010, 09:42:24 am by Calamaro » Logged

0
Offline Offline
Full Member
***
Karma: 1
Posts: 235
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Intanto per usare i booleani con l'avr gcc devi includere la seguente libreria:

Code:
stdbool.h

/* stdbool.h for GNU.  */
#ifndef __STDBOOL_H__
#define __STDBOOL_H__      1

/* The type `bool' must promote to `int' or `unsigned int'.  The constants
   `true' and `false' must have the value 0 and 1 respectively.  */
typedef enum
  {
    false = 0,
    true = 1
  } bool;

/* The names `true' and `false' must also be made available as macros.  */
#define false      false
#define true      true

/* Signal that all the definitions are present.  */
#define __bool_true_false_are_defined      1

#endif      /* stdbool.h */
Logged

Lodi
Offline Offline
Jr. Member
**
Karma: 0
Posts: 64
Arduino rocks
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Non ho mai provato ma dice che devi aggiungere un .h
How can I use structs as function returntypes or as parameters to functions?

The usual arduino workaround/hack is to have all functions that requires custom datatstructures to be placed in an additional .h file. Just create a new tab in the IDE and give it a name.h then #include "name.h"
Logged

Campagne Aretine
Offline Offline
God Member
*****
Karma: 0
Posts: 816
Arduino è una figata
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

ah capito... sarebbe come creare una specie di libreria no? domani nel tardo pomeriggio riprovo a fare il programma... io volevo fare una struttura per i motori, anche se per due è esagerato però mi piaceva l'idea di definire la struttura motore composta da un id,  velocità e direzione.

Ripeto non sono un buon programmatore ma ho idea che questa cosa mi snellisca il programma. Sbaglio?

comunque grazie per le risposte  smiley-grin
Logged

Pages: [1]   Go Up
Jump to: