Preguntas etiquetadas con c

C es un lenguaje de programación de uso general utilizado para la programación del sistema (SO e incrustado), bibliotecas, juegos y multiplataforma. Esta etiqueta debe usarse con preguntas generales sobre el lenguaje C, como se define en el estándar ISO 9899 (la última versión, 9899: 2018, a menos que se especifique lo contrario; también etiquete las solicitudes específicas de la versión con c89, c99, c11, etc.). C es distinto de C ++ y no debe combinarse con la etiqueta C ++ en ausencia de una razón racional.


13
Encontrar duplicados en O (n) tiempo y O (1) espacio
Entrada: Dada una matriz de n elementos que contiene elementos de 0 a n-1, y cualquiera de estos números aparece cualquier cantidad de veces. Objetivo: encontrar estos números repetitivos en O (n) y usar solo espacio de memoria constante. Por ejemplo, que n sea 7 y la matriz sea {1, …
121 c++  c  algorithm 

23
¿Qué pertenece a una herramienta educativa para demostrar las suposiciones injustificadas que las personas hacen en C / C ++?
Me gustaría preparar una pequeña herramienta educativa para SO que debería ayudar a los programadores principiantes (e intermedios) a reconocer y desafiar sus suposiciones injustificadas en C, C ++ y sus plataformas. Ejemplos: "enteros envueltos" "todos tienen ASCII" "Puedo almacenar un puntero de función en un vacío *" Pensé que …



6
socket connect () vs bind ()
Ambos connect()y bind()sistema de llamadas 'asociado' el descriptor de archivo de socket a una dirección (típicamente un / combinación de puerto IP). Sus prototipos son como: - int connect(int sockfd, const struct sockaddr *addr, socklen_t addrlen); y int bind(int sockfd, const struct sockaddr *addr, socklen_t addrlen); ¿Cuál es la diferencia …





6
¿Por qué se requiere el segmento .bss?
Lo que sé es que las variables globales y estáticas se almacenan en el .datasegmento y los datos no inicializados están en el .bsssegmento. Lo que no entiendo es por qué tenemos un segmento dedicado para las variables no inicializadas. Si una variable no inicializada tiene un valor asignado en …

7
Cast to int vs floor
¿Hay alguna diferencia entre estos: float foo1 = (int)(bar / 3.0); float foo2 = floor(bar / 3.0); Según tengo entendido, ambos casos tienen el mismo resultado. ¿Hay alguna diferencia en el código compilado?
120 c++  c  floating-point 

13
imprimir pila de llamadas en C o C ++
¿Hay alguna forma de volcar la pila de llamadas en un proceso en ejecución en C o C ++ cada vez que se llama a una determinada función? Lo que tengo en mente es algo como esto: void foo() { print_stack_trace(); // foo's body return } Donde print_stack_tracefunciona de manera …
120 c++  c  linux  callstack 

22
Posición del bit menos significativo que se establece
Estoy buscando una forma eficiente de determinar la posición del bit menos significativo que se establece en un entero, por ejemplo, para 0x0FF0 sería 4. Una implementación trivial es esta: unsigned GetLowestBitPos(unsigned value) { assert(value != 0); // handled separately unsigned pos = 0; while (!(value & 1)) { value …


Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.