Cos'è ElectroYou | Login Iscriviti

ElectroYou - la comunità dei professionisti del mondo elettrico

Ricerca in Array di char in C

Raccolta di codici sorgenti

Moderatore: Foto UtentePaolino

0
voti

[11] Re: Ricerca in Array di char in C

Messaggioda Foto Utenteclaudiocedrone » 12 dic 2023, 22:29

L'unica osservazione è che, se non vado errato, il titolo modificato a posteriori (ovvero non prima della pubblicazione del secondo post) apparirà solo nei post ma il titolo del thread rimane invariato.
"Non farei mai parte di un club che accettasse la mia iscrizione" (G. Marx)
Avatar utente
Foto Utenteclaudiocedrone
20,2k 4 7 9
Master EY
Master EY
 
Messaggi: 14386
Iscritto il: 18 gen 2012, 13:36

0
voti

[12] Re: Ricerca in Array di char in C

Messaggioda Foto Utenteandre29 » 13 dic 2023, 10:55

GioArca67 ha scritto:Mi sembra opportuno modificare il titolo in qualcosa tipo
"Ricerca in Array di char in C"
affinché sia più comprensibile
osservazioni?


Si, ho provato ma non ci sono riuscito. Non so se qualche moderatore può farlo.
Avatar utente
Foto Utenteandre29
68 2 6
Frequentatore
Frequentatore
 
Messaggi: 251
Iscritto il: 26 apr 2015, 9:57

0
voti

[13] Re: Ricerca in Array di char in C

Messaggioda Foto Utenteandre29 » 13 dic 2023, 11:41

Allora ho fatto qualche prova, e sembra funzioni:
L'obbiettivo è stampare Testo2.

Codice: Seleziona tutto
char RXbuffer [30]="prova,$,testo_1,Testo2";
char timestep[7];
void get_timestep (char RXbuffer[]);


Codice: Seleziona tutto
int main() {
   get_timestep(&RXbuffer[0]); // dovrebbe essere l'indirizzo
    printf(timestep);

   return 0;
}



Codice: Seleziona tutto
void get_timestep (char *){
   int i,n=0;
   bool v=false;

   for (i=0;i<DIM_BUFFER;i++) {
         if (RXbuffer[i]='$')  {
               i=i+6;
                  for (n=0;n<7;n++) {
                 i++;
                    timestep[n]=RXbuffer[i];
                    printf("\n");
                     }
                  break;
            }
   }
}


Quello che a me interessa capire non è tanto il come fare il ciclo for, ma è cosa e come gli devo dare alla funzione, cioè l'indirizzo.
Avatar utente
Foto Utenteandre29
68 2 6
Frequentatore
Frequentatore
 
Messaggi: 251
Iscritto il: 26 apr 2015, 9:57

0
voti

[14] Re: Ricerca in Array di char in C

Messaggioda Foto Utenteandre29 » 13 dic 2023, 11:42

djnz ha scritto:tra l'altro, la condizione:
Codice: Seleziona tutto
RXbuffer[i]=="$"

dovrebbe essere:
Codice: Seleziona tutto
RXbuffer[i]=='$'

Poi, ma questo è solo "design", il buffer passato come argomento, mentre l'array del risultato acceduto come variabile globale?

Si potrebbe fare così (a memoria, non testato):
Codice: Seleziona tutto
#define DIM_BUFFER  100

char RXbuffer [DIM_BUFFER];
char array[7];

Codice: Seleziona tutto
bool get_array() {
    int i;
    for (i=0; i<(DIM_BUFFER-7); i++)
        if (RXbuffer[i] == '$')  {
            memcpy(array, RXbuffer+i+1, 7);
            return 1;
        }
    return 0;
}

Da usare con:
Codice: Seleziona tutto
if (get_array()) { ... }


Grazie, adesso provo questa soluzione
Avatar utente
Foto Utenteandre29
68 2 6
Frequentatore
Frequentatore
 
Messaggi: 251
Iscritto il: 26 apr 2015, 9:57

2
voti

[15] Re: Ricerca in Array di char in C

Messaggioda Foto Utenteclaudiocedrone » 13 dic 2023, 12:04

Modificato il titolo ma che faticaccia, è toccato farlo per ogni singolo post :evil:
"Non farei mai parte di un club che accettasse la mia iscrizione" (G. Marx)
Avatar utente
Foto Utenteclaudiocedrone
20,2k 4 7 9
Master EY
Master EY
 
Messaggi: 14386
Iscritto il: 18 gen 2012, 13:36

0
voti

[16] Re: Ricerca in Array di char in C

Messaggioda Foto Utenteandre29 » 13 dic 2023, 12:24

claudiocedrone ha scritto:Modificato il titolo ma che faticaccia, è toccato farlo per ogni singolo post :evil:

Colpa mia!!! :roll: Grazie :ok:
Avatar utente
Foto Utenteandre29
68 2 6
Frequentatore
Frequentatore
 
Messaggi: 251
Iscritto il: 26 apr 2015, 9:57

0
voti

[17] Re: Ricerca in Array di char in C

Messaggioda Foto Utentemarkc » 29 lug 2024, 18:13

andre29 ha scritto:Allora ho fatto qualche prova, e sembra funzioni:
L'obbiettivo è stampare Testo2.


Io userei la strtok()
Avatar utente
Foto Utentemarkc
21 3
New entry
New entry
 
Messaggi: 55
Iscritto il: 15 lug 2024, 9:21

Precedente

Torna a Firmware e programmazione

Chi c’è in linea

Visitano il forum: Nessuno e 8 ospiti