fbcyborg
23-09-2008, 17:14
Salve a tutti,
stavo vedendo un modulo del kernel di Linux che ha una struttura così definita:
static struct i2c_algorithm ov518_i2c_algo = {
#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 14)
.name = "OV518 algorithm",
.id = I2C_ALGO_SMBUS,
#endif
.smbus_xfer = ov518_smbus_xfer,
.algo_control = ov51x_i2c_control,
.functionality = ov518_i2c_func,
};
Sebbene capisco che si stanno facendo delle assegnazioni dentro una struttura dichiarata lì nel modulo, volevo sapere che significato ha il "punto" prima di functionality, di algo_control, ecc.
Inoltre, perché si fa così?
E' forse la stessa cosa che si fa dopo aver dichiarato una struttura, e tramite il nome della variabile di quel tipo si mette il punto e si assegnano i valori?
Ovvero:
ov518_i2c_algo.functionality = ov518_i2c_func; ??
Grazie.
stavo vedendo un modulo del kernel di Linux che ha una struttura così definita:
static struct i2c_algorithm ov518_i2c_algo = {
#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 14)
.name = "OV518 algorithm",
.id = I2C_ALGO_SMBUS,
#endif
.smbus_xfer = ov518_smbus_xfer,
.algo_control = ov51x_i2c_control,
.functionality = ov518_i2c_func,
};
Sebbene capisco che si stanno facendo delle assegnazioni dentro una struttura dichiarata lì nel modulo, volevo sapere che significato ha il "punto" prima di functionality, di algo_control, ecc.
Inoltre, perché si fa così?
E' forse la stessa cosa che si fa dopo aver dichiarato una struttura, e tramite il nome della variabile di quel tipo si mette il punto e si assegnano i valori?
Ovvero:
ov518_i2c_algo.functionality = ov518_i2c_func; ??
Grazie.