¿Cuál es el formato para escribir código en lenguaje C?
Estándares de escritura de códigos de programas en lenguaje C
(Junior Programmer Discussion Board)
Prólogo
Un buen estándar de escritura de programas es escribir Garantía de programa de alta calidad. Un programa fuente claro y estandarizado no sólo es conveniente para la lectura, sino que, lo que es más importante, facilita la verificación de errores y mejora la eficiencia de la depuración, garantizando así en última instancia la calidad y la capacidad de mantenimiento del software.
Instrucciones
l Este documento es principalmente adecuado para principiantes que recién comienzan a contactar con la programación.
l Para programadores con cierta experiencia en el desarrollo de proyectos de ingeniería, se recomienda aprender la versión avanzada de especificación de escritura de código de programa en lenguaje C.
Tabla de contenidos
1 Estándares de escritura de código
2 Estándares de redacción de comentarios
3 Estándares de nomenclatura
4 Otros Consejos y requisitos
1 Estándares de escritura de código
1.1 Definición de función
Cura llaves: { }
La definición y suma de cada una función Las instrucciones deben escribirse comenzando en la columna 1. El nombre de la función (incluida la lista de parámetros) y las llaves del cuerpo de la función deben estar en una línea cada uno. Puede agregar un comentario después del paréntesis al final del cuerpo de la función. El comentario debe incluir el nombre de la función. Esto facilita la verificación del emparejamiento de los paréntesis y también puede ver claramente si la función ha finalizado.
Ejemplo 1: Declaración de función
void matMyFunction(int n)
{
……
} /* matMyFunction*/
1.2 Uso de espacios y líneas en blanco
Cuando se necesitan espacios
l Después de la coma y después del punto y coma en el medio del declaración Agregue espacios, como:
int i, j, k;
for (i = 0; i lt; n; i)
resultado = func( a, b, c);
l Deje un espacio en ambos lados del operador binario, como
a gt; b a lt; >
l En ambos lados de la palabra clave, como if ()..., no la escriba como if()...
l Debe haber un espacio entre el tipo y el especificador de puntero:
char *szName;
Cuando no se agregan espacios
l Utilice el símbolo de referencia del miembro de la estructura y -gt; y derecha:
pStud-gt; szName , Student.nID
l No agregue espacios ni tabulaciones al final de la línea
l No agregue espacios entre el nombre de la función y el corchete izquierdo:
func(…)
l No agregue un espacio entre el símbolo de descripción del puntero * y el nombre de la variable:
int *pInt; No escriba: int * pInt;
l No puede haber un operador compuesto en el medio Agregue espacios, de lo contrario se producirán errores de sintaxis, como:
a = b a lt; = b son todos incorrectos
Líneas vacías y nuevas líneas
l función Agrega una línea en blanco entre la descripción de la variable y la declaración de ejecución
l Agregue una línea en blanco entre los bloques de funciones principales en cada función para indicar la separación.
l No escriba varias palabras en una sola línea.
Ejemplo 2: líneas en blanco y saltos de línea;
int main()
{
int i, j, nSum = 0; //Descripción de la variable
for (i = 0; i lt; 10; i) //Código de ejecución
{
for (j = 0 ; j lt; 10; j )
{
nSum = i;
}
}
}
1.3 Configuración de sangría
Utilice el formato de sangría para escribir el programa de acuerdo con la relación jerárquica entre declaraciones. Para cada nivel, aplique una sangría un nivel hacia atrás
Hay dos formas de sangrar: 1. Utilice la tecla Tab 2. Utilice 4; espacios.
Todo el archivo debe ser coherente internamente y no mezclar la tecla Tab y 4 espacios, porque diferentes editores manejan la tecla Tab de manera diferente.
1.4 Uso de saltos de línea
· La longitud de cada línea no debe exceder los 80 caracteres. Cuando la línea del programa es demasiado larga, se debe escribir en líneas separadas.
· Cuando el contenido de una línea de programa necesita dividirse en varias líneas, el símbolo de operación debe colocarse al final de la línea.
· La bifurcación de líneas debe seguir relaciones lógicas naturales. Por ejemplo, no escriba un juicio lógico simple en dos líneas.
· La sangría después de los saltos de línea debe estar alineada según la relación lógica del programa. Por ejemplo: después de plegar la tabla de parámetros, la siguiente fila debe estar debajo del corchete izquierdo de la tabla de parámetros.
Ejemplo 2: Formato de salto de línea
dwNewShape = matAffineTransform(coords, traducción,
rotación);
if ((( new_shape .x gt; borde_izquierdo)
(new_shape.x lt; borde_derecho)) amplificador
((new_shape.y gt; borde_inferior) amplificador;
p>(new_shape.y lt; top_border)))
{
draw(new_shape);
}
1.5 El formato de las declaraciones anidadas (bloques de declaraciones)
Para declaraciones anidadas, es decir, los bloques de declaraciones (como if, while, for, switch, etc.) deben incluirse entre llaves. La llave de apertura de una llave debe estar en su propia línea, alineada con la palabra clave. Se recomienda que incluso si solo hay una declaración en un bloque de declaración, se incluya entre llaves. Esto puede hacer que la estructura del programa sea más clara y evitar errores. Se recomienda comparar bloques más largos con un comentario después de la llave final para indicar el final del bloque de lenguaje.
Ejemplo 3: Formato de declaración anidada
if (valor lt; max)
{
if (valor != 0)
{
func(valor);
}
}
} más {
error("El valor es demasiado grande.");
} /* if (value lt; max) */
2 Estándares de redacción de comentarios
Los comentarios deben describir el contenido de forma clara y precisa. Las partes complejas del programa deben explicarse con comentarios. La cantidad de comentarios debe ser moderada. Demasiados o muy pocos pueden provocar fácilmente dificultades de lectura.
2.1 Estilo de comentario
· El lenguaje C utiliza un conjunto de (/* ... */) como delimitadores de comentarios.
· Los comentarios deben expresarse en inglés en la medida de lo posible.
· Consulte el Ejemplo 4 para conocer el estilo básico de los comentarios.
· Los comentarios deben aparecer antes del contenido a explicar, no después.
· Intente no utilizar comentarios al final de línea excepto para describir el propósito de las variables y comentarios al final de los bloques de idioma.
Ejemplo 4: Varios estilos de comentarios
/*
* ******************* * ******************************
* Nota de énfasis
* ** * ********************************************
*/
/*
* Bloquear comentarios
*/
/* Comentarios de una sola línea*/ p>
//Comentario de una sola línea
int i; *Comentario de fin de línea*/
2.2 Cuando se necesitan comentarios
· Si el El nombre de la variable no puede describir completamente su El propósito debe explicarse mediante comentarios.
· Si algún código es difícil de entender para mejorar el rendimiento, se debe explicar mediante comentarios.
· Para un párrafo de programa relativamente largo, se deben agregar comentarios para explicarlo. Si hay un diagrama de flujo en el documento de diseño, se debe comentar la ubicación correspondiente en el programa.
· Si en el programa se utiliza un algoritmo complejo, se recomienda indicar su fuente.
· Si durante la depuración se descubre que un determinado párrafo es propenso a errores, se debe tener en cuenta.
3 Convenciones de nomenclatura
3.1 Nomenclatura de constantes y variables
l Las constantes simbólicas se nombran en letras mayúsculas. Por ejemplo:
#define LONGITUD 10
l Si una constante simbólica consta de varias palabras, se pueden conectar dos palabras diferentes con un guión bajo. Por ejemplo:
#define MAX_LEN 50
Principios básicos de denominación de variables:
l Puede elegir inglés significativo (letras minúsculas) para formar nombres de variables para hacer personas Ver esta variable le da una idea aproximada de lo que significa.
l No utilices nombres de personas, lugares ni pinyin chino.
l Si utiliza abreviaturas, utilice aquellas que sean convencionales, en lugar de inventar las suyas propias.
l Para nombres de variables compuestos por varias palabras, la primera letra de las demás palabras, excepto la primera, debe estar en mayúscula. Como por ejemplo:
dwUserInputValue.
3.2 Denominación de funciones
El principio de denominación de funciones es básicamente el mismo que el de denominación de variables. Para empezar, la denominación de funciones puede tomar la forma de "Nombre de función".
4 Otros consejos y requisitos
l Las funciones generalmente deben tener menos de 100 líneas
l Las definiciones de funciones deben incluir tipos de retorno, no hay ningún tipo de retorno Agregar vacío
l Al escribir expresiones de comparación, coloque la constante en el lado izquierdo
10 == n
NULL != pInt
l Las variables de puntero siempre deben inicializarse o restablecerse a NULL
l Utilice {} para incluir declaraciones compuestas, incluso si solo hay una línea, como por ejemplo:
if (1 == a ) p>
{
x = 5
}
/~danewang/c/CodingStandards.html