char query[80];
while ( scanf("%s", &query) == 1 ) {
/* ... */
}
Eu estou recebendo o seguinte 'warning' referente ao código acima:
In function 'main':
[Warning] char format, different type arg (arg 2)
1. Alguma sugestão de como solucionar?
2. Existe algum site com a documentação completa da linguagem C, assim como existe no site da Sun para o Java? (Mesmo que o site do prof. Paulo Feofiloff seja de excelente ajuda)
Em resposta à Claudio Freitas
Re: [Warning] char format, different type arg (arg 2)
por Wellington Castello -
1 - Tira esse & do scanf.
2 - Existe um livro, na minha opnião o melhor sobre a linguagem, "The C Programming Language" - Brian W. Kernghan e Dennis M. Ritchie ou simplesmente K&R. Existe também o documento ISO-9899-1999-C99 com (quase) todas as espeficações da linguagem C (veja os links), mas se você usa linux é melhor ver o documento anterior a esse pois esse padrão ainda não foi completamente implementado no gcc (a maior parte já foi...).
E talvez esses links possam te ajudar:
Até mais.
2 - Existe um livro, na minha opnião o melhor sobre a linguagem, "The C Programming Language" - Brian W. Kernghan e Dennis M. Ritchie ou simplesmente K&R. Existe também o documento ISO-9899-1999-C99 com (quase) todas as espeficações da linguagem C (veja os links), mas se você usa linux é melhor ver o documento anterior a esse pois esse padrão ainda não foi completamente implementado no gcc (a maior parte já foi...).
E talvez esses links possam te ajudar:
- comp.lang.c Frequently Asked Questions
- The Development of the C Language by Dennis M. Ritchie
- Programming in C (document collection at Lysator)
- International Obfuscated C Code Contest
- Programming C at Wikibooks
- The New C Standard: An economic and cultural commentary an unpublished book about "detailed analysis of the International Standard for the C language"
- ISO/IEC 9899 (pdf)
- C99
- Open source development using C99 Is your C code up to standard? by Peter Seebach
- Are you Ready For C99?
- Article "Incompatibilities Between ISO C and ISO C++" by David R. Tribble
- Forums
Até mais.
Em resposta à Wellington Castello
Re: [Warning] char format, different type arg (arg 2)
por Claudio Freitas -
Muito obrigado pela solução e pelos links Wellington!
Em resposta à Wellington Castello
Re: [Warning] char format, different type arg (arg 2)
Wow, que bibliografia! Só complementando o que o Wellington disse, um vetor ou ponteiro é rigorosamente um endereço de memória. Quando você for passar a referência de um vetor para uma função que altera o conteúdo desse vetor, só passando o endereço da primeira casa (vetor[0] ou simplesmente vetor, eles apontam para o mesmo trecho de memória), passe o apontador ou vetor direto para a função. Da maneira que você escreveu Cláudio, você estaria passando o endereço do endereço do vetor, daí vem o warning.
Abraços!
Abraços!
Em resposta à João Francisco Amorim Enomoto
Re: [Warning] char format, different type arg (arg 2)
por Claudio Freitas -
Hmm, dessa parte eu não me lembrava. Valeu João!
Em resposta à Wellington Castello
Re: [Warning] char format, different type arg (arg 2)
por Vanessa Sabino -
Incluir o link do International Obfuscated C Code Contest foi maldade com quem vai corrigir os EPs! 
Bom, você colocou link pra especificação em pdf, então só complementando vou indicar aqui um lugar em que está em html:
http://www.open-std.org/jtc1/sc22/wg14/www/docs/n843.htm
Bom, você colocou link pra especificação em pdf, então só complementando vou indicar aqui um lugar em que está em html:
http://www.open-std.org/jtc1/sc22/wg14/www/docs/n843.htm
Em resposta à Vanessa Sabino
Re: [Warning] char format, different type arg (arg 2)
Relaxa Vanessa: programas obscuros, notas obscuras =P
Abraços! Bom EP4 para todos!
Abraços! Bom EP4 para todos!
Em resposta à Vanessa Sabino
Re: [Warning] char format, different type arg (arg 2)
por Wellington Castello -
Foram só uns copy/paste :D Nem reparei que tinha colado o link do Obfuscated C Code Contest, de qualquer modo não deixa de ser legal hehe. Nada que o indent ep.c não resolva no caso de alguém querer fazer ascii art no EP :D