Ho seguito definire nel mio codiceCome posso # definire una stringa char * senza segno?
#define PRODUCTNAME "SomeName"
e voglio inviarlo con una funzione com_reply(unsigned char* msg, uint16_t lenght)
.
Ora ricevo un avviso che la mia argomentazione differisce in termini di affidabilità. Io so qual è il problema e anche per questo com_reply
utilizza in unsigned char*
invece di char*
, voglio solo sapere:
Come posso definire il mio stringa come unsigned char*
così posso usarlo per tutto il mio programma senza ottenere avvisi in tutto il luogo .
EDIT:
Strettamente parlando ho più di un definisce qui e la ragione principale è che c'è una BANNER
definiscono che consiste di diverse altre definisce, in questo modo:
#define PRODUCTNAME "SomeName"
#define PRODUCTDATE "2013-03-30"
#define BANNER PRODUCTNAME " (" PRODUCTDATE ")"
Devo creare le variabili const e le concatenano all'avvio del programma invece di usare definisce qui?
Perché non 'const char * PRODOTTO = "SomeName"' o simili? (non correlato, ma #define ha molti svantaggi per questo.) –
Non so come sia compatibile con lo standard, ma che dire: '(const unsigned char *)" SomeName "' – Mysticial
Per curiosità, che cosa significa 'com_reply'? funzione? Sembra che sia qualcosa che non dovrebbe in realtà prendere una stringa, ma piuttosto un puntatore a un numero compreso tra 0 e 255. – austin