I'm learning C++ programming at school and by myself as well. Now I'm trying to make some upgrades on the visual experience and on the user interface. My question is that can I close the program after a simple click on a MessageBox's "NO" button. I whant to skip "Press any key to contiue" after the program ran. Here is the code: `
#include<iostream>
#include<windows.h>
#include<stdlib.h>
using namespace std;
int main()
{
MessageBox ( NULL, "7. Adott az a(i), i=1,n szamsor. Hozzuk létre a b szamsort", "Feladat szovege", MB_OK);
float a[111], b[111], n;
cout<<"n= ?\b";
MessageBox ( HWND_DESKTOP, "Kerlek irj be egy szamot, hogy hany ertek van a sorozatban!", "10_tombok/07", MB_OK);
cin>>n;
cout<<"\n";
for(int i=1; i<=n; i++)
{
cout<<"a"<<i<<"= ?\b";
cin>>a[i];
}
for(int i=1; i<=n; i++)
{
if (a[i]>=0)
{
b[i]=2*a[i];
}
else
{
b[i]=-a[i]/2;
}
}
cout<<"\nA 'b' szamsor: ";
for(int i=1; i<=n; i++)
{
if (i!=n)
cout<<b[i]<<", ";
else
cout<<b[i]<<"\n";
}
int mbID= MessageBox (NULL, "Szeretned ujra futtatni a programot?", "Program end", MB_ICONQUESTION | MB_YESNO | MB_DEFBUTTON2);
switch (mbID)
{
case IDYES:
{
return main();
break;
}
case IDNO:
{
//here i need something
return 0;
break;
}
}
`
To address the question, if running from within Visual Studio you will get the "Press any key to continue." prompt. Try running the executable directly.
For the question in your comment, use a loop. At the very least something like this:
It is actually undefined behavior to call
main()
from within your C++ program.If you are really interested in Windows UI programming, have a look at some Win32 or MFC tutorials. It is a bit different from building console applications.