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.

4
¿Por qué todo el mundo escribe def sobre los tipos C estándar?
Si desea utilizar Qt , debe abrazar quint8, quint16y así sucesivamente. Si desea utilizar GLib , debe darle la bienvenida guint8, guint16etc. En Linux los hay u32, s16y así sucesivamente. uC / OS define SINT32, UINT16y así sucesivamente. Y si tiene que usar alguna combinación de esas cosas, será mejor …
103 c++  c  stdint 

12
¿Por qué los literales de caracteres C son ints en lugar de chars?
En C ++, sizeof('a') == sizeof(char) == 1. Esto tiene sentido intuitivo, ya que 'a'es un carácter literal y sizeof(char) == 1como lo define el estándar. En C sin embargo, sizeof('a') == sizeof(int). Es decir, parece que los literales de caracteres C son en realidad números enteros. ¿Alguien sabe por …
103 c++  c  char  sizeof 

7
Coma en macro C / C ++
Digamos que tenemos una macro como esta #define FOO(type,name) type name Que podríamos usar como FOO(int, int_var); Pero no siempre tan simple como eso: FOO(std::map<int, int>, map_var); // error: macro "FOO" passed 3 arguments, but takes just 2 Por supuesto que podríamos hacer: typedef std::map<int, int> map_int_int_t; FOO(map_int_int_t, map_var); // …
103 c++  c  macros  c-preprocessor 



3
Diferencia entre int32, int, int32_t, int8 e int8_t
Me encontré con el tipo de datos int32_ten un programa C recientemente. Sé que almacena 32 bits, pero ¿no lo hace inty int32hace lo mismo? Además, quiero usarlo charen un programa. ¿Puedo usar int8_ten su lugar? ¿Cuál es la diferencia? Para resumir: ¿cuál es la diferencia entre int32, int, int32_t, …
103 c  int  declaration 

7
Impresión de caracteres hexadecimales en C
Estoy tratando de leer en una línea de caracteres, luego imprimir el equivalente hexadecimal de los caracteres. Por ejemplo, si tengo una cadena "0xc0 0xc0 abc123", es decir , donde los primeros 2 caracteres están c0en hexadecimal y los caracteres restantes están abc123en ASCII, entonces debería obtener c0 c0 61 …
103 c  hex  printf 

4
¿Qué significa -D_XOPEN_SOURCE?
Recientemente encontré un código que gcc no compilaría sin este argumento. Revisé la página de manual de gcc, pero no encontré esta opción específica. Lo encontré XOPEN_SOURCE, pero hubo poca explicación de lo que hace. ¿Alguien puede dar más detalles? Sé que -D_XOPEN_SOURCEse puede ajustar a diferentes valores, por ejemplo …
103 c  gcc 

2
¿Qué significa && en void * p = && abc;
Me encontré con un fragmento de código void *p = &&abc;. ¿Cuál es el significado de &&aquí? Sé acerca de las referencias de rvalue pero creo que se &&usa en este contexto es diferente. ¿Qué &&indica en void *p = &&abc;?
102 c++  c  gcc  operators 

10
"F" después del número
¿Qué findican después de los números? ¿Es esto de C o de Objective-C? ¿Hay alguna diferencia en no sumar esto a un número constante? CGRect frame = CGRectMake(0.0f, 0.0f, 320.0f, 50.0f); ¿Puedes explicar por qué no escribiría simplemente: CGRect frame = CGRectMake(0, 0, 320, 50);

7
Hacer que un programa se ejecute lentamente
¿Hay alguna forma de ejecutar un programa C ++ más lento cambiando los parámetros del sistema operativo en Linux? De esta manera, me gustaría simular lo que sucederá si ese programa en particular se ejecuta en una máquina realmente más lenta. En otras palabras, una máquina más rápida debería comportarse …
102 c++  c  linux  unix  ubuntu 

6
¿Deben ir las definiciones de estructuras en archivos .ho .c?
He visto definiciones completas de structs en encabezados y solo declaraciones. ¿Hay alguna ventaja de un método sobre el otro? Si hace una diferencia, generalmente escribo def una estructura como esa en el .h typedef struct s s_t; Editar Para ser claros, las opciones son declaración en el archivo de …
102 c  header  struct 

6
snprintf y Visual Studio 2010
Soy lo suficientemente desafortunado como para quedarme atascado usando VS 2010 para un proyecto, y noté que el siguiente código aún no se compila con el compilador que no cumple con los estándares: #include <stdio.h> #include <stdlib.h> int main (void) { char buffer[512]; snprintf(buffer, sizeof(buffer), "SomeString"); return 0; } (falla …

11
¿Por qué está obsoleto printf con un solo argumento (sin especificadores de conversión)?
En un libro que estoy leyendo, está escrito que printfcon un solo argumento (sin especificadores de conversión) está en desuso. Recomienda sustituir printf("Hello World!"); con puts("Hello World!"); o printf("%s", "Hello World!"); ¿Alguien puede decirme por qué printf("Hello World!");está mal? Está escrito en el libro que contiene vulnerabilidades. ¿Cuáles son estas …


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.