Qual é a diferença entre o especificador do formato %LG e %LF em C?
Okay, há aqui algumas peças que não são respostas directas à sua pergunta, mas serão úteis para ter no mesmo lugar. O L, indica que o tipo de argumento é um duplo longo. O caso importa, porque eu indica uma int longa. As funções printf e scanf determinam os tipos a serem retirados da pilha com base nos especificadores de formato, então se você errar, ele vai morder você.
Segundo, ambos os formatos %F e %G vêm em letras maiúsculas e minúsculas. A única diferença entre %f e %F (ou %g e %G) é se as letras que aparecem são maiúsculas ou minúsculas. Isso parece estranho, porque %F não usa letras. Suponho que seja para a consistência entre E, F e G.
O formato %F imprime (ou lê) um valor em vírgula flutuante em casas decimais. Você pode especificar todas as opções usuais de largura e precisão de campo, etc.
O formato %G, por outro lado, irá imprimir em notação decimal ou científica, o que produzir uma string de saída mais curta. Assim, 1.0 irá imprimir como 1.0, mas 1000000.0 irá imprimir como 1E+06, pelo menos com a implementação glibc da biblioteca padrão.
Artigos semelhantes
- Qual é a melhor maneira de converter um pdf para um formato amigável para acender ou outro formato amigável para leitor de ebooks?
- Qual é a diferença entre Blu-ray e multi-formato?
- Qual é a diferença entre o formato de instrução RISC e o 8086?
- Quais são as diferenças entre os especificadores do formato %f, %e e %g na língua C?