Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
C/C++ - Array dinamico in C - son sulla strada giusta per una libreria generica?
Forum - C/C++ - Array dinamico in C - son sulla strada giusta per una libreria generica? - Pagina 4

Pagine: [ 1 2 3 4 ] Precedente | Prossimo
Avatar
Mikelius (Member)
Expert


Messaggi: 525
Iscritto: 14/04/2017

Segnala al moderatore
Postato alle 0:56
Lunedì, 03/07/2017
Testo quotato

Postato originariamente da lumo:

Due consigli:
1) non usare un define per sizeof(char) e sizeof(char*), non è molto sensato e peggiora la leggibilità
2) Io eviterei l'else (soprattutto in riga, blrgh) in tutti quei casi dove il return precedente lo rende implicito.



un :

Codice sorgente - presumibilmente C/C++

  1. #define TYPE_ARR char
  2.  
  3. ....
  4. size_t dimType=sizeof(TYPE_ARR) ;



invece? cosi se mai dovesse cambiare quel char con un qualsiasi altro tipo sarebbe facile farlo


E, domanda mia tecnica:

Codice sorgente - presumibilmente Plain Text

  1. printf( "\n" );
  2. e
  3. puts("");



qual'è da preferire?

Ultima modifica effettuata da Mikelius il 03/07/2017 alle 1:08
PM Quote
Avatar
lumo (Member)
Expert


Messaggi: 449
Iscritto: 18/04/2010

Segnala al moderatore
Postato alle 15:44
Lunedì, 03/07/2017
Testo quotato

Postato originariamente da Mikelius:

Testo quotato

Postato originariamente da lumo:

Due consigli:
1) non usare un define per sizeof(char) e sizeof(char*), non è molto sensato e peggiora la leggibilità
2) Io eviterei l'else (soprattutto in riga, blrgh) in tutti quei casi dove il return precedente lo rende implicito.



un :

Codice sorgente - presumibilmente C/C++

  1. #define TYPE_ARR char
  2.  
  3. ....
  4. size_t dimType=sizeof(TYPE_ARR) ;



invece? cosi se mai dovesse cambiare quel char con un qualsiasi altro tipo sarebbe facile farlo


Così va meglio ma in questo caso non ha senso cambiare char con qualche altro tipo (volendo essere fini si potrebbe usare un uint8_t, ma vabbè)


Testo quotato


E, domanda mia tecnica:

Codice sorgente - presumibilmente Plain Text

  1. printf( "\n" );
  2. e
  3. puts("");



qual'è da preferire?


putchar('\n');

Con printf attento a questa cosa: https://www.owasp.org/index.php/Format_string_attack
Ossia non usare printf(stringa); ma piuttosto printf("%s", stringa) [non è il tuo caso]

PM Quote
Pagine: [ 1 2 3 4 ] Precedente | Prossimo