Prosty komunikat (WinAPI)

0

Witam,
Mógłby mi ktoś wytłumaczyć dlaczego nie pojawia się żadna wylosowana liczba.

 
#define WIN32_LEAN_AND_MEAN
#include <Windows.h>
#include <cstdlib>
#include <ctime>
int rand(int min,int max);
INT WINAPI WinMain(HINSTANCE hInstance, HINSTANCE, LPSTR, int nCmdShow)
{
	srand(time_t(NULL));
	MessageBox(NULL,L"Test"+ rand(1,6) ,L"Komunikat",NULL);
	return 0;
}
int rand(int min,int max)
{
	return (rand () % max) +min;
}

Dziękuję z góry. :)

0

Moze przeczytaj na szybko jakis kurs...
Powiedz mi ile to jest katarzyna + 3?

r. : Po wylosowaniu, zamien liczbe na stringa. Dodaj tego stringa do tresci komunikatu. Wyswietl.

0

Porównaj sobie swój kod z poniższym, a znajdziesz odpowiedź na swoje pytanie.

#define WIN32_LEAN_AND_MEAN
#define UNICODE

#include <Windows.h>
#include <strsafe.h>
#include <cstdlib>
#include <ctime>

int rnd(int min,int max);

INT WINAPI WinMain(HINSTANCE hInstance, HINSTANCE, LPSTR, int nCmdShow)
{
        srand((UINT)time(NULL));

        TCHAR msg[128] = L"\0";

        StringCchPrintf(msg, 128, L"Test %d", rnd(1,6));

        MessageBox(NULL, msg, L"Komunikat", NULL);
        return 0;
}

int rnd(int min, int max)
{
        int tmp;
        if (max>=min)
                max-= min;
        else
        {
                tmp= min - max;
                min= max;
                max= tmp;
        }
        return max ? (rand() % max + min) : min;
}

1 użytkowników online, w tym zalogowanych: 0, gości: 1