Especificador de formato %G en C

Waqar Aslam 12 octubre 2023
  1. Especificadores de formato en lenguaje de programación C
  2. el especificador de formato %g en C
Especificador de formato %G en C

En este artículo, aprenderemos sobre el especificador de formato %g utilizando el lenguaje de programación C.

Especificadores de formato en lenguaje de programación C

Los especificadores de formato no son más que un tipo especial de cadena u operador que se puede usar en C. A menudo se usan para recopilar información del usuario y generar información para la consola.

Su objetivo es indicar al compilador el tipo de datos de cualquier información que se ingrese o produzca. Cuando hablamos de tipos de datos, nos referimos a cosas como enteros, cadenas, flotantes, etc.

No hay un solo tipo de datos que no tenga su propio conjunto único de especificadores de formato. El signo % es siempre el primer carácter de un especificador de formato, seguido de una cadena de otros caracteres.

Se utilizan con scanf para entrada y printf para salida en el lenguaje de programación C. Los siguientes son algunos de los especificadores de formato usados en el lenguaje de programación C.

Especificador de formato Descripción
%g Similar a %e o %E
%f Especificador de formato flotante
%c Especificador de formato de caracteres
%s Especificador de formato de cadena
%e Notación científica de flotadores
%d Especificador de formato de entero
%x representación hexadecimal

el especificador de formato %g en C

Utiliza el estándar de precisión fija para imprimir números decimales de punto flotante y se utiliza para ese propósito. En el lenguaje de programación C, el especificador de formato %g se utiliza cuando se trabaja con datos de tipo decimal que pueden almacenarse en los tipos de datos doble y flotante de C.

El %g toma un número que podría representarse como %f (un simple flotante o doble) o %e (notación científica), y devolverá el número en el formato más corto de los dos.

En el siguiente ejemplo, tomaremos tres valores del tipo de datos doble, denominados “primer valor, segundo valor” y “tercer valor”, y luego imprimiremos estos valores uno a la vez usando la notación %g y %g. .

Ejemplo de código:

#include <stdio.h>

int main() {
  double firstValue = 123.45;
  printf("Printing 123.45 using %%g %g\n", firstValue);
  printf("Printing 123.45 using %%G %G\n\n", firstValue);

  double secondValue = 123.45e8;
  printf("Printing 123.45e8 using %%g %g\n", secondValue);
  printf("Printing 123.45e8 using %%G %G\n\n", secondValue);

  double thirdValue = 123.45e-8;
  printf("Printing 123.45e-8 using %%g %g\n", thirdValue);
  printf("Printing 123.45e-8 using %%G %G\n", thirdValue);

  return 0;
}

Producción :

Printing 123.45 using %g 123.45
Printing 123.45 using %G 123.45

Printing 123.45e8 using %g 1.2345e+10
Printing 123.45e8 using %G 1.2345E+10

Printing 123.45e-8 using %g 1.2345e-06
Printing 123.45e-8 using %G 1.2345E-06
Waqar Aslam avatar Waqar Aslam avatar

I am Waqar having 5+ years of software engineering experience. I have been in the industry as a javascript web and mobile developer for 3 years working with multiple frameworks such as nodejs, react js, react native, Ionic, and angular js. After which I Switched to flutter mobile development. I have 2 years of experience building android and ios apps with flutter. For the backend, I have experience with rest APIs, Aws, and firebase. I have also written articles related to problem-solving and best practices in C, C++, Javascript, C#, and power shell.

LinkedIn