Estou aprendendo C e tentando entender como scanf funciona. Não consigo entender alguns termos: o termo "input item", "initial subsequence", "matching sequence". Estou lendo isto https://pubs.opengroup.org/onlinepubs/9699919799/functions/scanf.html . Diz:
Um item de entrada deve ser definido como a sequência mais longa de bytes de entrada (até qualquer largura máxima de campo especificada, que pode ser medida em caracteres ou bytes dependendo do especificador de conversão), que é uma subsequência inicial de uma sequência correspondente .
Suponha que no formato i tenha %d e no stdin 4.5 . O que é subsequência inicial e o que é sequência correspondente ? E o que é item de entrada ?
Pensei que o item de entrada é o que corresponde a esse especificador, ou seja, para %d os símbolos correspondentes são números (talvez sinais de + - no início), mas então ele diz:
Exceto no caso de um especificador de conversão %, o item de entrada (ou, no caso de uma especificação de conversão %n, a contagem de bytes de entrada) deve ser convertido para um tipo apropriado para o caractere de conversão. Se o item de entrada não for uma sequência correspondente , a execução da especificação de conversão falhará;
ou seja, o item de entrada pode não corresponder, o que significa que ele não consiste apenas em símbolos que correspondem ao especificador.
Então, você pode me explicar esses termos? E me dizer se é aqui que estou procurando documentação para funções C? Quais sites são os melhores lugares para ler documentação para funções C?