Jump to content

Variavel nao definida?


Wasted

Recommended Posts

Boas estou-me a iniciar no visual c++ e deparei-me com este problema..Tenho um dialog based document (MFC) e queria simplesmente receber um valor duma caixa de texto e passa-la para valor inteiro . (Para usar para fins contabilisticos..).Não me dá erro..apenas este aviso: local variable 'x' used without having been initialized. Eis o codigo:

       
void CTeste8Dlg::OnChangeQuantidade() {
       
       CString s;
int x;

m_tavira.EnableWindow(true);
m_olhao.EnableWindow(true);
m_faro.EnableWindow(true);



m_quant.GetWindowText(s);
s.Format("%d",x);
}
Link to comment
Share on other sites

A razão para o warning é que não estás a atribuir um valor a x antes de a utilizares no Format.

Mas tem em atenção que o Format não funciona para o que queres, mas sim para o inverso: inserir um valor na CString. Tens que utilizar a função _ttoi para passar o número que está na CString para um inteiro:

x = _ttoi(s);

Desaparecido.

Link to comment
Share on other sites

Obrigado isso ta resolvido..agora estou com outra duvida, uso um botao CSpin ( de 0 a 100). O que quero fazer é o seguinte: tenho um certo valor numa editbox, que vai ser divido pelo numero que estara noutra edit box (que tem o spincontrol para subir ou baixar a percentagem).Por exemplo: (Total = 1000€, Edit com o spin = 20, 1000/20=50 e aparecera 50 na outra editbox). Mas o programa da-me smp erro quando executo...Eis o codigo do InitDialog e do evento de mudar de posicao no spin:

UDACCEL AccellValue;
AccellValue.nSec = 1000;
AccellValue.nInc = 1;
spint.SetRange(0, 100);
spint.SetAccel(1, &AccellValue);

Evento do spin

int x,quantidade;
CString s;

x = spint.GetPos();
m_quant.GetWindowText(s);
quantidade = _ttoi(s);
quantidade = quantidade / x;
s.Format("%d",quantidade);
m_tavira.SetWindowText(s);
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.