Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Roborock Saros 20: il robot preciso e molto sottile
Roborock Saros 20: il robot preciso e molto sottile
Il nuovo robot di Roborock per l'aspirazione della polvere e il lavaggio dei pavimenti spicca per immediatezza d'uso e per l'efficacia dell'azione, grazie anche a un ridotto sviluppo in altezza. Saros 20 integra un motore da ben 36.000Pa di potenza e un sistema di lavaggio a due panni rotanti, con bracci estensibili e un sistema di navigazione molto preciso.
ASUS ROG Kithara: quando HIFIMAN incontra il gaming con driver planari da 100mm
ASUS ROG Kithara: quando HIFIMAN incontra il gaming con driver planari da 100mm
ASUS e HIFIMAN uniscono le forze per creare ROG Kithara, cuffie gaming con driver magnetici planari da 100mm, design open-back e microfono MEMS full-band. Una proposta che ambisce a coniugare fedeltà per audiofili e performance ludiche, disponibili a 319 euro
Roborock Qrevo Curv 2 Flow: ora lava con un rullo
Roborock Qrevo Curv 2 Flow: ora lava con un rullo
Qrevo Curv 2 Flow è l'ultima novità di casa Roborock per la pulizia di casa: un robot completo, forte di un sistema di lavaggio dei pavimenti basato su rullo che si estende a seguire il profilo delle pareti abbinato ad un potente motore di aspirazione con doppia spazzola laterale
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 13-05-2006, 12:54   #1
Sirbako
Senior Member
 
L'Avatar di Sirbako
 
Iscritto dal: Oct 2004
Città: Rovereto (tn)
Messaggi: 2187
[C] struct, vettore di struct errore

questa è la parte del codice:
Codice:
typedef struct
 {
  char cmd[100];
	int pid;
 } t_figlio;

#define MAX_FIGLI 100

t_figlio figli[MAX_FIGLI];
int tot=0;

void update_figli(int pid,char * arg){
int i=0;
		while(i<MAX_FIGLI && figli[i]!=pid) i++;
		strcpy(figli[i].cmd,arg);
}

void init_figli(){
int i;
	for(i=0;i<MAX_FIGLI;i++)
		figli[i].pid=0;

}
void add_figlio(int pid){
int i;
i=0;
	while(i<MAX_FIGLI && figli[i]!=0) i++;
  figli[i].pid=pid;
	tot=i;
}

void rem_figlio(int pid){

int i,k;
i=0;
	while(i<MAX_FIGLI && figli[i]!=pid) i++;
	if (i==tot) exit(-1);
	 for(k=i;k<tot;k++) {
		figli[k].pid=figli[k+1].pid;
		strcpy(figli[k].cmd,figli[k].cmd)
		}
	tot--;
	
}
ora, quando compilo dice:

Codice:
figli.c:13: error: syntax error before ‘figli’
figli.c:13: warning: data definition has no type or storage class
figli.c: In function ‘update_figli’:
figli.c:19: error: request for member ‘cmd’ in something not a structure or union
figli.c: In function ‘init_figli’:
figli.c:25: error: request for member ‘pid’ in something not a structure or union
figli.c: In function ‘add_figlio’:
figli.c:32: error: request for member ‘pid’ in something not a structure or union
figli.c: In function ‘rem_figlio’:
figli.c:42: error: request for member ‘pid’ in something not a structure or union
figli.c:42: error: request for member ‘pid’ in something not a structure or union
figli.c:43: error: request for member ‘cmd’ in something not a structure or union
figli.c:43: error: request for member ‘cmd’ in something not a structure or union
figli.c:44: error: syntax error before ‘}’ token
figli.c: In function ‘jobs’:
figli.c:54: error: request for member ‘pid’ in something not a structure or union
figli.c:60: error: request for member ‘cmd’ in something not a structure or union
figli.c:62: error: request for member ‘cmd’ in something not a structure or union
figli.c:69: error: request for member ‘cmd’ in something not a structure or union
figli.c:71: error: request for member ‘cmd’ in something not a structure or union
make: *** [figli.o] Error 1
stefano@ubuntu:~/shell$ make
figli.c:13: error: syntax error before ‘figli’
figli.c:13: warning: data definition has no type or storage class
figli.c: In function ‘update_figli’:
figli.c:19: error: request for member ‘cmd’ in something not a structure or union
figli.c: In function ‘init_figli’:
figli.c:25: error: request for member ‘pid’ in something not a structure or union
figli.c: In function ‘add_figlio’:
figli.c:32: error: request for member ‘pid’ in something not a structure or union
figli.c: In function ‘rem_figlio’:
figli.c:42: error: request for member ‘pid’ in something not a structure or union
figli.c:42: error: request for member ‘pid’ in something not a structure or union
figli.c:43: error: request for member ‘cmd’ in something not a structure or union
figli.c:43: error: request for member ‘cmd’ in something not a structure or union
figli.c:44: error: syntax error before ‘}’ token
figli.c: In function ‘jobs’:
figli.c:54: error: request for member ‘pid’ in something not a structure or union
figli.c:60: error: request for member ‘cmd’ in something not a structure or union
figli.c:62: error: request for member ‘cmd’ in something not a structure or union
figli.c:69: error: request for member ‘cmd’ in something not a structure or union
figli.c:71: error: request for member ‘cmd’ in something not a structure or union
make: *** [figli.o] Error 1
che diavolo vuole?
__________________

Esse.Ti.?!?
Sirbako è offline   Rispondi citando il messaggio o parte di esso
Old 13-05-2006, 14:31   #2
andbin
Senior Member
 
L'Avatar di andbin
 
Iscritto dal: Nov 2005
Città: TO
Messaggi: 5206
Ho preso il tuo codice pari pari, gli ho solo messo all'inizio 2 include (<string.h> e <stdlib.h>) e poi ho compilato con:
gcc -Wall -c -o prova.o prova.c
Risultato:
Codice:
prova.c: In function `update_figli':
prova.c:17: invalid operands to binary !=
prova.c: In function `add_figlio':
prova.c:30: invalid operands to binary !=
prova.c: In function `rem_figlio':
prova.c:39: invalid operands to binary !=
prova.c:44: syntax error before '}' token
Correzioni:
Codice:
void update_figli(int pid,char * arg){
int i=0;
        while(i<MAX_FIGLI && figli[i].pid!=pid) i++;
        strcpy(figli[i].cmd,arg);
}
Codice:
void add_figlio(int pid){
int i;
i=0;
    while(i<MAX_FIGLI && figli[i].pid!=0) i++;
  figli[i].pid=pid;
    tot=i;
}
Codice:
void rem_figlio(int pid){

int i,k;
i=0;
    while(i<MAX_FIGLI && figli[i].pid!=pid) i++;
    if (i==tot) exit(-1);
     for(k=i;k<tot;k++) {
        figli[k].pid=figli[k+1].pid;
        strcpy(figli[k].cmd,figli[k].cmd);
        }
    tot--;

}
__________________
Andrea, SCJP 5 (91%) - SCWCD 5 (94%)
andbin è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Roborock Saros 20: il robot preciso e molto sottile Roborock Saros 20: il robot preciso e molto sott...
ASUS ROG Kithara: quando HIFIMAN incontra il gaming con driver planari da 100mm ASUS ROG Kithara: quando HIFIMAN incontra il gam...
Roborock Qrevo Curv 2 Flow: ora lava con un rullo Roborock Qrevo Curv 2 Flow: ora lava con un rull...
Alpine A290 alla prova: un'auto bella che ti fa innamorare, con qualche limite Alpine A290 alla prova: un'auto bella che ti fa ...
Recensione HONOR Magic 8 Lite: lo smartphone indistruttibile e instancabile Recensione HONOR Magic 8 Lite: lo smartphone ind...
NVIDIA ha superato Apple: adesso è...
Samsung non abbandonerà la S-Pen:...
Fibra ottica e monitoraggio sismico: acc...
La nuova Xbox è già morta,...
Il SoC dei nuovi Google Pixel 11 potrebb...
Anche Samsung punterà sulle batte...
Volkswagen supera quota 2 milioni di aut...
Pokémon Vento e Onda si mostrano ...
Costa meno di 17€ ma gonfia fino a 150 P...
Il nuovo MacBook entry level potrebbe av...
iPhone 17 a 909€ in tutti i colori: 256G...
Umidità e muffa addio a 99€: ques...
Compri il nuovo Xiaomi 17 e ti regalano ...
NVIDIA diversifica i fornitori di GDDR7:...
Nuovi sconti (e coupon), ecco la top 10 ...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 19:15.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v