Página 1 de 1
Problemas com Sprintf.

Enviado:
24 Nov 2011 11:56
por hertzing
Boa tarde
Estou tendo que trabalhar com o compilador MikroC PRO em C.
E não consegui usar as funções de tratamento de string, como exemplo o sprintf.
Inclui a library sprintf.h, mas não consigo utiliza-la.
Alguem que já usou da uma mão.
Vlww

Enviado:
24 Nov 2011 16:28
por ze
mostra teu fonte

Enviado:
25 Nov 2011 17:46
por hertzing
char aux = 150;
char buffer[4] = "";
sprintf(buffer,"%03d",aux);
Acompanhei pelo debuger, mas passa e não muda o valor dos indices no buffer.

Enviado:
25 Nov 2011 20:19
por tcpipchip
Nao necessita dar o include...no MIKROC
Testei aqui....no PROTEUS....
- Código: Selecionar todos
char aux = 150;
char buffer[4] = "";
void main() {
sprintf(buffer,"%03d",aux);
while(1);
}
Inspecionei a data ram do pic e voila, lá apareceu a string 150 seguido do NULL.
Está 100% teu codigo.
Usei mikroc 3.2
TCPIPCHIP

Enviado:
27 Nov 2011 18:53
por hertzing
Obrigado
Estou desconfiando do compilador "mikroC PRO for dsPIC v4.60"
Que está no modo de demostração ainda, que indica que foi compilado e gravado o código com sucesso.
Mas na verdade não gerou o código
Vou realizar mais alguns testes.

Enviado:
27 Nov 2011 20:02
por tcpipchip
Bem, testei aqui e funcionou!

Enviado:
04 Dez 2011 14:43
por hertzing
Somente para deixar registrado
O problema é o compilador,
que na hora de gerar um código que não estava disponível na versão Demo,
ele compilava e efetuava a gravação com sucesso, mas somente gerava o código que a versão demo permitia.
Deixando o programa com falhas.
Abraços

Enviado:
05 Dez 2011 16:19
por tcpipchip
Na verdade...o MIKROC é chatinho...as vezes eu incluia uma rotina e o programa ja nao funcionava mais...provavelmente se perdendo nas paginas de memoria....
Outra coisa que descobri...quando usava matrizes, dava pau direto...entao passei somente a usar ponteiros para matrizes e passou a funcionar mais direitinho...estranho que no MIKRO PASCAL e MIKRO BASIC, o programa, com a mesma funcao, nao dava pau...