Articles of printf

especificadores de formato printf para uint32_t y size_t

Tengo lo siguiente size_t i = 0; uint32_t k = 0; printf(“i [ %lu ] k [ %u ]\n”, i, k); Recibo la siguiente advertencia al comstackr: format ‘%lu’ expects type ‘long unsigned int’, but argument has type ‘uint32_t’ Cuando ejecuté esto usando una férula obtuve lo siguiente: Format argument 1 to printf (%u) expects […]

¿Por qué printf () promueve un flotador a un doble?

De una pregunta anterior: Si intentas pasar un float a printf , se promoverá que se double antes de que printf reciba printf() es una función variadica ¿no? Entonces, ¿una función variadica promueve un argumento float a un double antes de pasarlo?

¿Convierte números de coma flotante a dígitos decimales en GLSL?

Como otros han discutido , GLSL no tiene ningún tipo de depuración de printf. Pero a veces realmente quiero examinar valores numéricos mientras depuro mis sombreadores. He estado tratando de crear una herramienta de depuración visual. Descubrí que es posible representar una serie arbitraria de dígitos con bastante facilidad en un sombreador, si trabaja con […]

¿Hay alguna forma de especificar cuántos caracteres de una cadena imprimir con printf ()?

¿Hay alguna manera de especificar cuántos caracteres de una cadena imprimir (similar a los lugares decimales en int s)? printf (“Here are the first 8 chars: %s\n”, “A string that is more than 8 chars”); Me gustaría imprimir: Here are the first 8 chars: A string

Printf variable número de decimales en flotación

Encontré un formato interesante para imprimir cadenas de longitud fija no terminadas como esta: char newstr[40] = {0}; sprintf(newstr,”%.*s”, sizeof(mystr), mystr); Así que creo que tal vez haya alguna manera bajo el comando printf para imprimir un número flotante … “% 8.2f” tener la capacidad de elegir el número de decimales con número entero. Algo […]

¿Cuál es el propósito de los modificadores h y hh para printf?

Además de %hn y %hhn (donde h o hh especifica el tamaño del objeto apuntado ), ¿cuál es el sentido de los modificadores h y hh para los especificadores de formato printf ? Debido a las promociones predeterminadas requeridas por la norma que se aplicará para las funciones variadic, es imposible pasar argumentos de tipo […]

C / C ++ printf () antes del problema scanf ()

Estoy usando Eclipse para codificar en C / C ++ y estoy luchando con lo que podría ser algo muy fácil. En mi código a continuación, uso printf() y después de scanf() . Si bien printf se escribe antes de scanf() la salida difiere. Pude averiguar algo sobre un problema similar aquí . Pero no […]

Explica el orden de evaluación en printf

Posible duplicado: Orden de evaluación de parámetros antes de una función que llama en C main() { int i=5; printf(“%d%d%d%d%d%d”,i++,i–,++i,–i,i); } La salida es 45545, pero no sé cómo está funcionando. Algunos dicen que los argumentos de una llamada a función se insertan en la stack de izquierda a derecha.

printf (“% p”) y casting a (void *)

En una pregunta reciente, alguien mencionó que al imprimir un valor de puntero con printf, la persona que llama debe convertir el puntero a void *, así: int *my_ptr = …. printf(“My pointer is: %p”, (void *)my_ptr); Por mi vida no puedo entender por qué. Encontré esta pregunta , que es casi lo mismo. La […]

Cómo imprimir un flotador de precisión simple con printf

Estoy tratando de imprimir un número de coma flotante en el ensamblaje x86_64, pero solo imprime el valor como cero. Hay algunas preguntas sobre esto ya. Uno pareció resolverse asegurándose de establecer la cantidad de registros vectoriales que está usando en% al . Otro mostró que necesita tener una alineación de stack de 16 bytes […]