Souci de débutant en programmation

Résolu/Fermé
ptirob91 Messages postés 34 Date d'inscription samedi 11 octobre 2008 Statut Membre Dernière intervention 13 décembre 2009 - 11 oct. 2008 à 15:42
ptirob91 Messages postés 34 Date d'inscription samedi 11 octobre 2008 Statut Membre Dernière intervention 13 décembre 2009 - 11 oct. 2008 à 23:04
Bonjour,
Je suis en train de faire mon premier programme informatique qui consiste a faire dire bonjour à mon ordinateur, mais , lors de la compilation ( avec VisualC++Express2008) il me met 1 erreure, je vais donc voir. et il me dit précisément:
"error C2055: liste de paramètres formels attendue, non une liste de types",là est mon problème, c'ets que je connais aucune des deux type de liste, on m'a dit que c'était parce que je n'avais pa mis de variable, mais je ne sais pa comment mettre une variable dans mon programme:
#include <stdlib.h>
#include <stdio.h>

int*main(const int)

{
("bonjour");
system("PAUSE");
return 0;
}
ceci est mon programme, dite moi se qu'il maque s'il vous plaît.
D'anvance merci.
A bientôt

35 réponses

Yuku Messages postés 199 Date d'inscription samedi 22 mars 2008 Statut Membre Dernière intervention 22 mars 2012 4
11 oct. 2008 à 16:43
Si je peux te donner un conseil... Télécharge Dev-C++, il est plus simple d'utilisation et très bien pour débuter. T'auras pas tout ce bordel avec ;)
0
ptirob91 Messages postés 34 Date d'inscription samedi 11 octobre 2008 Statut Membre Dernière intervention 13 décembre 2009 1
11 oct. 2008 à 16:46
sa y est, voici mon programme enfin terminer:
#include <stdlib.h>
#include <stdio.h>

int*main()

{
printf("bonjour !\n\n");
system("PAUSE");
return 0;
}
0
Yuku Messages postés 199 Date d'inscription samedi 22 mars 2008 Statut Membre Dernière intervention 22 mars 2012 4
11 oct. 2008 à 16:48
Ben c'est exactement ce que je t'avais dit XD
Sauf que je comprends pas trop pourquoi c'est "int*main"...
Sûrement une particularité de Visual...
0
ptirob91 Messages postés 34 Date d'inscription samedi 11 octobre 2008 Statut Membre Dernière intervention 13 décembre 2009 1
11 oct. 2008 à 16:52
en fait, quand g écrit mon programme,en dessous du curseur ya eu un truc d'afficher, je l'ai recopier betement, d'où le "const int " et "int*main"
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Yuku Messages postés 199 Date d'inscription samedi 22 mars 2008 Statut Membre Dernière intervention 22 mars 2012 4
11 oct. 2008 à 16:58
Ben, je vois surtout pas l'intérêt de mettre un int main (const int), un int main() suffit très bien.

Bon et maintenant, tu veux savoir autre chose? :)
0
ptirob91 Messages postés 34 Date d'inscription samedi 11 octobre 2008 Statut Membre Dernière intervention 13 décembre 2009 1
11 oct. 2008 à 17:09
pour l'instant non, mais quand j'aurai un probleme je te recontacterai via se site ou sinon, je devrai pas atrder a avoir besoin d'information sur des bouquin qui parle de programmation (des cours en gros) et besoin d'en savoir + sur les variable
Encore mille merci pour avoir aider a la constitution de mon premier programme.
A+
0
Yuku Messages postés 199 Date d'inscription samedi 22 mars 2008 Statut Membre Dernière intervention 22 mars 2012 4
11 oct. 2008 à 17:10
De rien ;)

Mais si peut ne pas te rassurer (XD) tu vas très vite voir des trucs bien plus compliqués que ça XD
0
ptirob91 Messages postés 34 Date d'inscription samedi 11 octobre 2008 Statut Membre Dernière intervention 13 décembre 2009 1
11 oct. 2008 à 17:27
surtou que je vais m'engager dans la robotique, se sera pas de la tarte.....
0
Yuku Messages postés 199 Date d'inscription samedi 22 mars 2008 Statut Membre Dernière intervention 22 mars 2012 4
11 oct. 2008 à 17:30
Yep, en effet.
0
ptirob91 Messages postés 34 Date d'inscription samedi 11 octobre 2008 Statut Membre Dernière intervention 13 décembre 2009 1
11 oct. 2008 à 17:39
est-ce que l'on peut mettre un fond d'écran sur le programme? Parce que c'est pa beau en noir....
0
Yuku Messages postés 199 Date d'inscription samedi 22 mars 2008 Statut Membre Dernière intervention 22 mars 2012 4
11 oct. 2008 à 17:48
Ah alors là ça demande une explication.

En fait tu as deux types de programmes : les programmes console et les programmes fenêtre.

Actuellement, en utilisant ton navigateur, tu utilises un programme fenêtre :) La plupart des programmes de nos jours sont des fenêtres (Word, Paint, Internet, Excel, Calculatrice, etc etc : des programmes fenêtre).

Mais avant, les programmes étaient exécutables en "console" : c'est ce que tu vois quand tu allumes ton ordi par exemple. Les ordinateurs n'avaient pas suffisamment de mémoire pour gérer les interfaces graphiques des fenêtres, et donc étaient en console.
Aujourd'hui on en est bien loin et logiquement tous les programmes sont en fenêtre.

Cependant, tout programme a un fichier "main" (comme la fonction que tu as créée).
Plus tard quand tu devras créer des programmes de milliers de lignes, tu peux faire des milliers de lignes de fenêtre, il te faudra forcément un petit programme console, qui dirige tout le reste.

Pour le moment, il faut que tu apprennes toutes les subtilités de la console (boucles, conditions, affectations, pointeurs, tableaux, etc etc), et après seulement tu pourras créer des programmes fenêtre.

Pour te donner une idée de la complexité de la chose en fenêtre :




Voici un programme console (que tu connais bien maintenant) :

#include <stdlib.h>
#include <stdio.h>

int*main()

{
printf("bonjour\n\n");
system("PAUSE");
return 0;
}




Et maintenant voici un programme fenêtre (VIDE !) :
(vide : ça veut dire qu'il ne fera que t'afficher une fenêtre!)


#include <windows.h>

/* Declare Windows procedure */
LRESULT CALLBACK WindowProcedure (HWND, UINT, WPARAM, LPARAM);

/* Make the class name into a global variable */
char szClassName[ ] = "WindowsApp";

int WINAPI WinMain (HINSTANCE hThisInstance,
HINSTANCE hPrevInstance,
LPSTR lpszArgument,
int nFunsterStil)

{
HWND hwnd; /* This is the handle for our window */
MSG messages; /* Here messages to the application are saved */
WNDCLASSEX wincl; /* Data structure for the windowclass */

/* The Window structure */
wincl.hInstance = hThisInstance;
wincl.lpszClassName = szClassName;
wincl.lpfnWndProc = WindowProcedure; /* This function is called by windows */
wincl.style = CS_DBLCLKS; /* Catch double-clicks */
wincl.cbSize = sizeof (WNDCLASSEX);

/* Use default icon and mouse-pointer */
wincl.hIcon = LoadIcon (NULL, IDI_APPLICATION);
wincl.hIconSm = LoadIcon (NULL, IDI_APPLICATION);
wincl.hCursor = LoadCursor (NULL, IDC_ARROW);
wincl.lpszMenuName = NULL; /* No menu */
wincl.cbClsExtra = 0; /* No extra bytes after the window class */
wincl.cbWndExtra = 0; /* structure or the window instance */
/* Use Windows's default color as the background of the window */
wincl.hbrBackground = (HBRUSH) COLOR_BACKGROUND;

/* Register the window class, and if it fails quit the program */
if (!RegisterClassEx (&wincl))
return 0;

/* The class is registered, let's create the program*/
hwnd = CreateWindowEx (
0, /* Extended possibilites for variation */
szClassName, /* Classname */
"Windows App", /* Title Text */
WS_OVERLAPPEDWINDOW, /* default window */
CW_USEDEFAULT, /* Windows decides the position */
CW_USEDEFAULT, /* where the window ends up on the screen */
544, /* The programs width */
375, /* and height in pixels */
HWND_DESKTOP, /* The window is a child-window to desktop */
NULL, /* No menu */
hThisInstance, /* Program Instance handler */
NULL /* No Window Creation data */
);

/* Make the window visible on the screen */
ShowWindow (hwnd, nFunsterStil);

/* Run the message loop. It will run until GetMessage() returns 0 */
while (GetMessage (&messages, NULL, 0, 0))
{
/* Translate virtual-key messages into character messages */
TranslateMessage(&messages);
/* Send message to WindowProcedure */
DispatchMessage(&messages);
}

/* The program return-value is 0 - The value that PostQuitMessage() gave */
return messages.wParam;
}


/* This function is called by the Windows function DispatchMessage() */

LRESULT CALLBACK WindowProcedure (HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
{
switch (message) /* handle the messages */
{
case WM_DESTROY:
PostQuitMessage (0); /* send a WM_QUIT to the message queue */
break;
default: /* for messages that we don't deal with */
return DefWindowProc (hwnd, message, wParam, lParam);
}

return 0;
}


Bref, prends ton temps et apprends doucement la console, et un jour tu pourras travailler en fenêtre !
0
ptirob91 Messages postés 34 Date d'inscription samedi 11 octobre 2008 Statut Membre Dernière intervention 13 décembre 2009 1
11 oct. 2008 à 17:52
ok, je vois la difficultée, mais tu connais des livres de programmation?
0
Yuku Messages postés 199 Date d'inscription samedi 22 mars 2008 Statut Membre Dernière intervention 22 mars 2012 4
11 oct. 2008 à 17:54
Ben, comme je suis étudiant en informatique, j'apprends comme ça et sans livres...
0
ptirob91 Messages postés 34 Date d'inscription samedi 11 octobre 2008 Statut Membre Dernière intervention 13 décembre 2009 1
11 oct. 2008 à 21:26
ba maintenan, j'aimerai savoir faire autre chose, mais je sai pas quoi! pourrai tu m'orientez en fonction de mon nivo( très moindre ) en pour me faire progresser ( du genre inclure un video ou ds fichier dans un programme si c'est possible)
0
ptirob91 Messages postés 34 Date d'inscription samedi 11 octobre 2008 Statut Membre Dernière intervention 13 décembre 2009 1
11 oct. 2008 à 23:04
voici se que j'ai fait:
#include <stdlib.h>
#include <stdio.h>

int main();
int secondary()
{
system("AFFICHER IMAGE");
printf <forest.jpg>;
printf("bonjour ! Comment allez-vous aujourd'hui ?\n\n");
system("PAUSE");
return 0;
}
et il me dit:
error C2065: 'forest' : identificateur non déclaré
error C2228: la partie gauche de '.jpg' doit avoir un class/struct/union le type est ''unknown-type''
error C2059: erreur de syntaxe : ';'
alors, que doi'je faire pour que mon programme m'affiche une image? est'ce possible qu'en fenetre?
0