Perguntas com a marcação «language-lawyer»

Para perguntas sobre os meandros das especificações formais ou oficiais das linguagens e ambientes de programação.




6
Funções puras: “Sem efeitos colaterais” implica “sempre a mesma saída, dada a mesma entrada”?
As duas condições que definem uma função puresão as seguintes: Sem efeitos colaterais (ou seja, apenas alterações no escopo local são permitidas) Sempre retorna a mesma saída, dada a mesma entrada Se a primeira condição for sempre verdadeira, há algum momento em que a segunda condição não seja verdadeira? Ou …

7
Posso usar NULL como substituição do valor 0?
Posso usar o NULLponteiro como substituto do valor de 0? Ou há algo de errado nisso? Como por exemplo: int i = NULL; como substituto para: int i = 0; Como experimento, compilei o seguinte código: #include <stdio.h> int main(void) { int i = NULL; printf("%d",i); return 0; } Resultado: …




3
C ++ decltype e parênteses - por quê?
O assunto foi discutido antes , mas isso não é uma duplicata. Quando alguém pergunta sobre a diferença entre decltype(a)e decltype((a)), a resposta usual é - aé uma variável, (a)é uma expressão. Acho esta resposta insatisfatória. Primeiro, aé uma expressão também. As opções para uma expressão primária incluem, entre outras …


2
Por que a gramática BNF de C permite declarações com uma sequência vazia de init-declarators?
Ao examinar a gramática BNF de C, achei estranho que a regra de produção de uma declaração tivesse essa aparência (de acordo com https://cs.wmich.edu/~gupta/teaching/cs4850/sumII06/The%20syntax%20of% 20C% 20in% 20Backus-Naur% 20form.htm ): <declaration> ::= {<declaration-specifier>}+ {<init-declarator>}* ; Por que usar um *quantificador (significando zero ou mais ocorrências) para o init-declarator? Isso permite que …





Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.