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.

3
Estructura de diseño de memoria en C
Tengo experiencia en C #. Soy muy novato en un lenguaje de bajo nivel como C. En C #, structel compilador distribuye la memoria de forma predeterminada. El compilador puede reordenar los campos de datos o rellenar bits adicionales entre campos de forma implícita. Entonces, tuve que especificar algún atributo …

7
¿Espacios con sangría automática con C en vim?
Me he echado a perder un poco al usar Eclipse y Java. Comencé a usar vim para hacer codificación C en un entorno de Linux, ¿hay alguna manera de que vim haga automáticamente el espaciado adecuado para los bloques? Entonces, después de escribir a {, la siguiente línea tendrá 2 …
85 c  vim  coding-style  vi 


8
¿Por qué obtengo un error de afirmación de C malloc?
Estoy implementando un algoritmo polinomial de divide y vencerás para poder compararlo con una implementación de OpenCL, pero no puedo ponerme malloca trabajar. Cuando ejecuto el programa, asigna un montón de cosas, verifica algunas cosas y luego las envía size/2al algoritmo. Luego, cuando vuelvo a tocar la malloclínea, escupe esto: …
85 c  gcc  malloc  assertion 


10
¿Existe una manera elegante y rápida de probar que los 1 bits de un entero estén en una región contigua?
Necesito probar si las posiciones (de 0 a 31 para un entero de 32 bits) con el valor de bit 1 forman una región contigua. Por ejemplo: 00111111000000000000000000000000 is contiguous 00111111000000000000000011000000 is not contiguous Quiero que esta prueba, es decir, alguna función has_contiguous_one_bits(int), sea portátil. Una forma obvia es recorrer …



8
¿Por qué GDB salta de forma impredecible entre líneas e imprime variables como "<valor optimizado fuera>"?
¿Alguien puede explicar este comportamiento de gdb? 900 memset(&amp;new_ckpt_info,'\0',sizeof(CKPT_INFO)); (gdb) **903 prev_offset = cp_node-&gt;offset;** (gdb) **905 m_CPND_CKPTINFO_READ(ckpt_info,(char *)cb-&gt;shm_addr.ckpt_addr+sizeof(CKPT_** HDR),i_offset); (gdb) **903 prev_offset = cp_node-&gt;offset;** (gdb) **905 m_CPND_CKPTINFO_READ(ckpt_info,(char *)cb-&gt;shm_addr.ckpt_addr+sizeof(CKPT_ HDR),i_offset);** (gdb) **908 bitmap_offset = client_hdl/32;** (gdb) **910 bitmap_value = cpnd_client_bitmap_set(client_hdl%32);** (gdb) **908 bitmap_offset = client_hdl/32;** (gdb) **910 bitmap_value = cpnd_client_bitmap_set(client_hdl%32);** (gdb) …



7
¿Cómo llamar a la función C ++ desde C?
Yo se esto. Llamar a la función C desde C ++: Si mi aplicación estuviera en C ++ y tuviera que llamar a funciones desde una biblioteca escrita en C. Entonces habría usado //main.cpp extern "C" void C_library_function(int x, int y);//prototype C_library_function(2,4);// directly using it. Esto no alteraría el nombre …
84 c++  c  visual-c++  extern-c 



12
¿Cómo borrar el búfer de entrada en C?
Tengo el siguiente programa: int main(int argc, char *argv[]) { char ch1, ch2; printf("Input the first character:"); // Line 1 scanf("%c", &amp;ch1); printf("Input the second character:"); // Line 2 ch2 = getchar(); printf("ch1=%c, ASCII code = %d\n", ch1, ch1); printf("ch2=%c, ASCII code = %d\n", ch2, ch2); system("PAUSE"); return 0; } …
84 c  buffer 

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.