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.

6
¿Cómo se formatean las matrices multidimensionales en la memoria?
En C, sé que puedo asignar dinámicamente una matriz bidimensional en el montón usando el siguiente código: int** someNumbers = malloc(arrayRows*sizeof(int*)); for (i = 0; i < arrayRows; i++) { someNumbers[i] = malloc(arrayColumns*sizeof(int)); } Claramente, esto en realidad crea una matriz unidimensional de punteros a un conjunto de matrices unidimensionales …

3
¿Por qué GCC genera un ensamblaje tan radicalmente diferente para casi el mismo código C?
Mientras escribía una ftolfunción optimizada , encontré un comportamiento muy extraño en GCC 4.6.1. Déjame mostrarte el código primero (para mayor claridad, marqué las diferencias): fast_trunc_one, C: int fast_trunc_one(int i) { int mantissa, exponent, sign, r; mantissa = (i & 0x07fffff) | 0x800000; exponent = 150 - ((i >> 23) …

8
Macro de sobrecarga en número de argumentos
Tengo dos macros FOO2y FOO3: #define FOO2(x,y) ... #define FOO3(x,y,z) ... Quiero definir una nueva macro de la FOOsiguiente manera: #define FOO(x,y) FOO2(x,y) #define FOO(x,y,z) FOO3(x,y,z) Pero esto no funciona porque las macros no se sobrecargan en la cantidad de argumentos. Sin modificar FOO2y FOO3, ¿hay alguna forma de definir …
184 c  macros  c-preprocessor 

8
¿Qué hace la llamada al sistema brk ()?
De acuerdo con el manual de programadores de Linux: brk () y sbrk () cambian la ubicación de la interrupción del programa, que define el final del segmento de datos del proceso. ¿Qué significa el segmento de datos aquí? ¿Es solo el segmento de datos o datos, BSS y montón …
184 c  linux  unix  memory-management  brk 

16
C lee el archivo línea por línea
Escribí esta función para leer una línea de un archivo: const char *readLine(FILE *file) { if (file == NULL) { printf("Error: file pointer is null."); exit(1); } int maximumLineLength = 128; char *lineBuffer = (char *)malloc(sizeof(char) * maximumLineLength); if (lineBuffer == NULL) { printf("Error allocating memory for line buffer."); exit(1); …
184 c  file-io  line  std 



8
¿Cómo comparo correctamente las cadenas?
Estoy tratando de obtener un programa para permitir que un usuario ingrese una palabra o carácter, lo almacene y luego lo imprima hasta que el usuario lo vuelva a escribir, saliendo del programa. Mi código se ve así: #include <stdio.h> int main() { char input[40]; char check[40]; int i=0; printf("Hello!\nPlease …
183 c  string  strcmp 

2
¿Uso realista de la palabra clave 'restringir' C99?
Estaba buscando documentación y preguntas / respuestas y la vi mencionada. Leí una breve descripción, afirmando que sería básicamente una promesa del programador que el puntero no se usará para apuntar a otro lado. ¿Alguien puede ofrecer algunos casos realistas en los que valga la pena usar esto?
183 c  gcc  c99  restrict-qualifier 



6
¿Cómo defino y uso un ENUM en Objective-C?
Declaré una enumeración en mi archivo de implementación como se muestra a continuación, y declaró una variable de ese tipo en mi interfaz como PlayerState thePlayerState; y usé la variable en mis métodos. Pero recibo errores que indican que no está declarado. ¿Cómo declaro y uso correctamente una variable de …
180 iphone  objective-c  c 




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.