A continuación se presentan algunos datos más interesantes sobre la programación en C:
1. Las macros pueden tener llaves desequilibradas:
Cuando usamos #define para una constante , el preprocesador produce un programa C donde se busca la constante definida y los tokens coincidentes se reemplazan con la expresión dada.
Ejemplo:
#include <stdio.h> // Declaring Macro // with unbalanced brackets #define P printf( int main() { int a; P"Hello World"); P"%d", a); return 0; }
Hello World0
2. Use main para declarar una o más variables enteras:
Ejemplo:
#include <stdio.h> int main(int c) { for (; ++c < 28;) putchar(95 + c); return 0; }
abcdefghijklmnopqrstuvwxyz
3. “%m” cuando se usa dentro de printf() imprime “Éxito”
m (especificador de conversión) no es C pero es una extensión GNU para printf. La conversión ‘ %m ‘ imprime la string correspondiente al código de error en errno .
%m solo imprime » éxito » cuando » errno == 0 » (es la abreviatura de una representación de string del último estado de error observado). Por ejemplo, si una función falla antes de printf, imprimirá algo bastante diferente.
Ejemplo:
#include <stdio.h> int main() { printf("%m"); return 0; }
Success
4. freno(0); se puede utilizar como alternativa para devolver 0;
brk() y sbrk() cambian la ubicación de la interrupción del programa, que define el final del segmento de datos del proceso.
Ejemplo:
#include <stdio.h> int main() { printf("%m"); brk(); }
Success
5. El programa C se puede escribir sin main()
Lógicamente, parece imposible escribir un programa en C sin usar una función main(). Dado que cada programa debe tener una función main() porque: –
- Es un punto de entrada de cada programa C/C++.
- Todas las funciones predefinidas y definidas por el usuario se llaman directa o indirectamente a través de main.
Pero en realidad, es posible ejecutar un programa C sin una función principal.
#include <stdio.h> #include <stdlib.h> // entry point function int nomain(); void _start() { // calling entry point nomain(); exit(0); } int nomain() { puts("Geeksforgeeks"); return 0; }
Compilación usando el comando:
gcc filename.c -nostartfiles (nostartfiles option tells the compiler to avoid standard linking)
Publicación traducida automáticamente
Artículo escrito por AmiyaKarmakar y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA