Assegnazione con parentesi

3

Su un altro sito SE ho visto un codice simile a questo:

int x[] = {1,2,3,4};
....
x[0] = {99};

Per il compito, c'è un vantaggio in questo semplicemente:

x[0] = 99;

link

    
posta Johnny Mopp 15.06.2017 - 14:25
fonte

1 risposta

5

Sì, ce n'è uno.

Queste parentesi disabilitano le conversioni di restringimento implicito, quindi se il tipo di espressione all'interno non si adatta a int si tratta di un errore invece di una perdita di dati silenziosa.
Ovviamente, 99 è molto piccolo e quindi di tipo int .

Provalo con un letterale sufficientemente grande come 99999999999 : link

    
risposta data 15.06.2017 - 14:33
fonte

Leggi altre domande sui tag