inicializar variables en Declaración
1
Inicializar una variable en C para asignarle un valor inicial. Sin esto, usted conseguirá lo que le pasó a estar en la memoria en ese momento , lo que lleva a un comportamiento incoherente y errores irreproducibles que puede ser muy difícil de rastrear .
2
Agregar una inicialización de la declaración. Sólo añadir una misión hasta el final de la declaración , así:
int x = 5 ;
3Sepan que inicializar matrices funciona de manera similar , excepto que usted debe poner múltiples separados por comas valores dentro de llaves . Al hacer esto, usted puede dejar el tamaño de la matriz, y será rellenado automáticamente :
month_lengths int [ ] = { 31 , 28 , 31 , 30 , 31 , 30 , 31 , 31 , 30 , 31 , 30 , 31 } ; página 4Tome ventaja de cadenas de caracteres. Las cadenas de caracteres , que son realmente conjuntos de caracteres , también son compatibles con un formato más sencillo para la inicialización :
título char [ ] = " mi programa " , página 5expreso uno u otro tipo de inicialización de la matriz en formato puntero ( desde arrays son realmente punteros) :
int * month_lengths = { 31 , 28 , 31 , 30 , 31 , 30 , 31 , 31 , 30 , 31 , 30 , 31 } ; char * title = " My Program " ;
6Recuerde que las estructuras en C se inician en la misma forma que las matrices :
struct role = {" Hamlet" , 7 , FALSO , "Príncipe de Dinamarca ", " Kenneth Branagh "} ;
inicializar variables manualmente
7Espera para inicializar una variable en otro lugar en el programa si esto va a ser más clara. Por ejemplo , una variable que será el índice de un bucle for es generalmente mejor inicializado en el bucle . Esto hace que sea más fácil para otro programador de leer , ya que la inicialización está cerca de donde se va a utilizar .
8Inicializar la estructura de datos en el momento adecuado . Si una estructura de datos que se va a asignar dinámicamente con malloc () o una función similar , no se puede inicializar hasta después de que ha asignado. Sin embargo , en este caso , lo que está declarando es en realidad un puntero , que aún debe ser inicializado a NULL como una cuestión de rutina .