PDA

View Full Version : Domande banali su VS 2010 Express C++


zulutown
30-05-2010, 10:08
Ciao,
sono uno sviluppatore Java EE e per una curiositą ho installato VS 2010 Express, C++.
Da "giovane" avevo studiato e usato un po' C++

L'applicazione che mi son fatto autogenerare ha istruzioni come:


#include "stdafx.h"
Console::WriteLine(L"Hello World");

che direi che sono funzionalitą di .NET.

Non riesco a capire alcune cose.
E' possibile trasformare questa applicazione gią esistente in applicazione che:
1)
Usano le istruzioni C standard

#include "stdio.h"
println("hello");


2)

Usano le istruzioni C++ standard

#include "iostream.h"
cout << "hello";


3)

Usano le API di Windows, ad esempio:

int WINAPI MessageBox(
__in_opt HWND hWnd,
__in_opt LPCTSTR lpText,
__in_opt LPCTSTR lpCaption,
__in UINT uType
);

fero86
30-05-2010, 14:03
E' possibile trasformare questa applicazione gią esistente in applicazione che:
1)
Usano le istruzioni C standard

#include "stdio.h"
println("hello");
la funzione C standard non si chiama println ma printf, inoltre stdio.h non va incluso con gli apici doppi ma con le parentesi ad angolo:
#include <stdio.h> comunque si, assolutamente: per creare un programma CUI (Console User Interface, in altre parole un programma con la finestrella nera che legge da stdin o cin e scrive su stdout/stderr o cout/cerr) in Visual C++ devi creare una "Win32 Console Application". poi per farla in C devi aggiungere file sorgenti con estensione .c mentre per farla in C++ devono avere estensione .cpp.



2)

Usano le istruzioni C++ standard

#include "iostream.h"
cout << "hello";
un paio di precisazioni anche qui: l'header "iostream" non ha l'estensione e va incluso anch'esso con parentesi ad angolo:
#include <iostream> inoltre (immagino che questo sia solo per brevitį) non hai ne' esplicitato il namespace da cui prendi "cout" ne' l'hai usato globalmente.



3)

Usano le API di Windows, ad esempio:

int WINAPI MessageBox(
__in_opt HWND hWnd,
__in_opt LPCTSTR lpText,
__in_opt LPCTSTR lpCaption,
__in UINT uType
);
naturalmente si, é possibile anche scrivere applicazioni GUI (Graphical User Interface); devi creare una "Win32 Application".

EDIT - pardon, si chiama "Win32 Project" (ho controllato ora).