Errori, bug, domande - pagina 2762
![MQL5 - Linguaggio delle strategie di trading integrato nel client terminal MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Ti stai perdendo delle opportunità di trading:
- App di trading gratuite
- Oltre 8.000 segnali per il copy trading
- Notizie economiche per esplorare i mercati finanziari
Registrazione
Accedi
Accetti la politica del sito e le condizioni d’uso
Se non hai un account, registrati
controllato:
OK, funziona senza alcun avvertimento del compilatore
Grazie
Riderai, ma anche questo funziona senza un avvertimento
Riderai, ma anche questo funziona senza avvertimenti
Riderai anche tu, ma è il modo per UB e il modo per ottenere il difficile bug sulle prossime build :-)
int foo=-1;
uchar bar=(uchar)foo; // чему должен быть равен bar ?
controllato:
OK, funziona senza alcun avvertimento del compilatore
Grazie
Perché la chiamata ArrayInitialize è necessaria in questo caso? Perché non scrivere semplicemente uchar uc[16] = {0xFF}; ?
ArrayInitialize ha senso per gli array distribuiti dinamicamente, mentre qui la dimensione è presumibilmente nota al momento della descrizione.
Riderai, ma anche questo funziona senza avvertimenti
non è divertente, non è un'inizializzazione corretta, che forse non capite perché avete fatto
è chiaro che il byte più significativo sarà tagliato quando si esegue il casting in uchar
Perché ho bisogno della chiamata ArrayInitialize in questo caso? Perché non scrivere semplicemente uchar uc[16] = {0xFF}; ?
ArrayInitialize ha senso per gli array distribuiti dinamicamente e qui la dimensione è presumibilmente nota al momento della descrizione.
non funziona
Dismettetelo, il primo elemento sarà 255 e il resto 0, 0, 0, 0, ...
OK, funziona senza alcun avvertimento del compilatore
senza un ghosting è normalmente così
UPD no, stesso avvertimento, tale letterale è di tipo ushortAncora una volta, a parità di condizioni...
Ancora una volta sul posto...
Sono totalmente confuso )
Avverte sulle costanti da 128 e 0xFF, ma non sulle variabili int con gli stessi valori.
Inoltre, non avverte nemmeno della costante -1 int. C'è una logica in questo?
s.s. Immagino che sia comprensibile con -1, si riduce a qualsiasi valore non firmato per max secondo le regole.senza un fantasma come quello.
UPD no, anche un avvertimento, tale letterale è di tipo ushort'\xFF'
Wow... in 4 (è aperto all'occasione) rotoli.
void OnStart()
{
ushort foo='\xFF';
}
PS/ quando all'occasione, chiunque abbia un sito web vicino a voi, dategli uno schiaffo.