C++ i Dev-C++ WIN-32 problem|Programmering / Grafisk formgivning|Forum|Nordichardware

Search
Forum Scope


Match



Forum Options



Minimum search word length is 3 characters - maximum search word length is 84 characters
Lost password?
The forums are currently locked and only available for read only access
sp_Feed sp_TopicIcon
C++ i Dev-C++ WIN-32 problem
Tovedal
Kommer du hit ofta?
Medlem
Forum Posts: 282
Member Since:
June 29, 2004
sp_UserOfflineSmall Offline
1
December 10, 2004 - 3:35 pm
sp_Permalink sp_Print

tja...
jag har nyligen börjat med C++ fast på en annan dator...
jag programmerar för övrigt nu i Dev-C++ och jag kan ju spara exe filer osv
men när jag trycker på dom så kommer ett system medelande upp med
'sökvägen' är inte ett giltigt Win-32 program
vad gör jag fel?

det funkar även inte om jag gör en så enkel kod som:

main (); //1
{
printf ("blablabla"); //2
return 0;
}

är det nått fel i koden???

Zelog
Kommer du hit ofta?
Medlem
Forum Posts: 359
Member Since:
January 29, 2003
sp_UserOfflineSmall Offline
792994
December 10, 2004 - 5:04 pm
sp_Permalink sp_Print

printf ("blablabla"); //2

Ska detta köras i windows? Då skapar du en application. Men kodsnutten du gav fungerar endast i DOS-prompten, och då skapar man inte en "application", I Borland C Builder fungerar det så i alla fall

Chewie
Kommer du hit ofta?
Medlem
Forum Posts: 1516
Member Since:
September 13, 2001
sp_UserOfflineSmall Offline
793039
December 10, 2004 - 6:03 pm
sp_Permalink sp_Print

Tovedal wrote: tja...
jag har nyligen börjat med C++ fast på en annan dator...
jag programmerar för övrigt nu i Dev-C++ och jag kan ju spara exe filer osv
men när jag trycker på dom så kommer ett system medelande upp med
'sökvägen' är inte ett giltigt Win-32 program
vad gör jag fel?

det funkar även inte om jag gör en så enkel kod som:

int main ();<--- ta bort ";" //1
{
printf ("blablabla"); //2
return 0;
}

är det nått fel i koden???

Har du inkluderat stdio.h ?

Sen "sparar" man inte exefiler i ett IDE.
Dev-C++ är mycket obehagligt, brukar starta det i skolan av misstag.
Kör MVS istället, förmodligen det enda programmet MS verkligen lyckats med.
Kan ju dessutom lägga till att din kod inte är C++, utan C.

fastbullit
Member
Medlem
Forum Posts: 3042
Member Since:
September 28, 2003
sp_UserOfflineSmall Offline
793054
December 10, 2004 - 6:21 pm
sp_Permalink sp_Print
#include <iostream.h> //bibliotek
int main()
{
cout << "blanda inte ihop C och C++" << endl; //cout=c++'s motsvarighet till printf
return 0; //om du ska ha int före main()
}

då ska du få upp en text: "blanda inte ihop C och C++" på skärmen
så tror jag väl det ska vara man är ju rätt rostig på koden ändå

Tovedal
Kommer du hit ofta?
Medlem
Forum Posts: 282
Member Since:
June 29, 2004
sp_UserOfflineSmall Offline
793064
December 10, 2004 - 6:29 pm
sp_Permalink sp_Print

okeej...

Tovedal
Kommer du hit ofta?
Medlem
Forum Posts: 282
Member Since:
June 29, 2004
sp_UserOfflineSmall Offline
793068
December 10, 2004 - 6:33 pm
sp_Permalink sp_Print

och nu blir jag förvirrad.. så det jag skrev var C lr C++ ?
och kan nån ge mig en kod som jag kan prova och säga vilket det är C lr C++

Tovedal
Kommer du hit ofta?
Medlem
Forum Posts: 282
Member Since:
June 29, 2004
sp_UserOfflineSmall Offline
793075
December 10, 2004 - 6:41 pm
sp_Permalink sp_Print

och kan nån nämna ett bra program för detta helst inte MVS för det jittar jag inte.. varken på nätet lr DC...

Chewie
Kommer du hit ofta?
Medlem
Forum Posts: 1516
Member Since:
September 13, 2001
sp_UserOfflineSmall Offline
793180
December 10, 2004 - 9:33 pm
sp_Permalink sp_Print

Tovedal wrote: och nu blir jag förvirrad.. så det jag skrev var C lr C++ ?
och kan nån ge mig en kod som jag kan prova och säga vilket det är C lr C++

Här har du två lite halvsmutsiga exempel.

// OOP i C# ( Detta kan du jämföra med C++ )

using System;

namespace Csharp_test
{
class Class1
{
[STAThread] static void Main(string[] args)
{
Class2 asdf = new Class2();
asdf.print();
}
}

class Class2
{
public void print()
{
Console.WriteLine("Hello World!");
}
}
}


// ######################################

// C
#include <stdio.h>
void main( void )
{
printf("Hello Worldn");
}

Skrev i C# för jag orkar inte C++ just nu, men det är liknande.
C++ har en massa arv från C vilket gör att du kan kompilera C program i en C++ kompillator.
C# exemplet kan verka som det onödigt mycket kod för en så trivial uppgift, fast jag hade iofs inte behövt skriva Class2.
C# och C++ är objektorienterade språk där man bakar in en massa saker i ett objekt ( inte helt olikt en struct ).

Bara för att klargöra så att du inte missförstod, MVS = Microsoft Visual Studio. Dev-C++ duger utmärkt för din del.
Det det är bara jag som är kräsen :-), har lite svårt för alla fula knappar mm mm i Dev-c++.

Chewie
Kommer du hit ofta?
Medlem
Forum Posts: 1516
Member Since:
September 13, 2001
sp_UserOfflineSmall Offline
793187
December 10, 2004 - 9:41 pm
sp_Permalink sp_Print

Kom på att det finns ju en massa fördefinierade macros du kan testa.
http://msdn.microsoft.com/libr.....macros.asp

Inte testat detta själv, men testa denna koden i ditt program.

#ifdef __cplusplus
printf("detta är c++n");
#endif

Jag brukar ibland själv använda liknande saker tex.

#ifdef _DEBUG
printf("Ngn debug infon");
#endif

eller

#ifdef WIN32
// win specifika saker
elif __linux // <-- kommer inte ihåg ifall detta stämmer, men det är ngt liknande
// samma saker fast för linux
#endif

vilket gör koden lite mer platformsoberoende.

ren
Kommer du hit ofta?
Medlem
Forum Posts: 833
Member Since:
January 15, 2004
sp_UserOfflineSmall Offline
793360
December 11, 2004 - 1:37 am
sp_Permalink sp_Print

fastbullit wrote:

#include <iostream.h> //bibliotek
int main()
{
cout << "blanda inte ihop C och C++" << endl; //cout=c++'s motsvarighet till printf
return 0; //om du ska ha int före main()
}

då ska du få upp en text: "blanda inte ihop C och C++" på skärmen
så tror jag väl det ska vara man är ju rätt rostig på koden ändå

Nu är jag gnällig och pendantisk som f*n men jag hittar 2 fel.

när du inkluderar iostream så ska det stå


#include <iostream> // alltså inget .h på slutet
#include "foo.h" //här ska man däremot ha .h på slutet.

cout och endl är definierade i namespacet std så för att komma åt dom måste du skriva


using namespace std;

eller

std::cout << "blanda inte ... " std::endl;
Tovedal
Kommer du hit ofta?
Medlem
Forum Posts: 282
Member Since:
June 29, 2004
sp_UserOfflineSmall Offline
793402
December 11, 2004 - 7:13 am
sp_Permalink sp_Print

men vad är bäst då? C, C++ lr C-sharp..
jag antar att C-sharp lr C# kommer att slå igenom.. men vad är bäst?
och allt det här ni harskrivit, löser detmina WIN-32 problem ???

Chewie
Kommer du hit ofta?
Medlem
Forum Posts: 1516
Member Since:
September 13, 2001
sp_UserOfflineSmall Offline
793465
December 11, 2004 - 12:01 pm
sp_Permalink sp_Print

Tovedal wrote: men vad är bäst då? C, C++ lr C-sharp..
jag antar att C-sharp lr C# kommer att slå igenom.. men vad är bäst?
och allt det här ni harskrivit, löser detmina WIN-32 problem ???

Det beror helt på vad vi vill göra. Bäst är svårt att säga. Därimot så kan man ju säga att C# är det nyaste och fräshaste språket.
Ifall det löser dina problem har jag ingen aning om, du får väl testa.

fastbullit
Member
Medlem
Forum Posts: 3042
Member Since:
September 28, 2003
sp_UserOfflineSmall Offline
793671
December 11, 2004 - 4:50 pm
sp_Permalink sp_Print

ren wrote: [quote=fastbullit]

#include <iostream.h> //bibliotek
int main()
{
cout << "blanda inte ihop C och C++" << endl; //cout=c++'s motsvarighet till printf
return 0; //om du ska ha int före main()
}

då ska du få upp en text: "blanda inte ihop C och C++" på skärmen
så tror jag väl det ska vara man är ju rätt rostig på koden ändå

Nu är jag gnällig och pendantisk som f*n men jag hittar 2 fel.

när du inkluderar iostream så ska det stå


#include <iostream> // alltså inget .h på slutet
#include "foo.h" //här ska man däremot ha .h på slutet.

cout och endl är definierade i namespacet std så för att komma åt dom måste du skriva


using namespace std;

eller

std::cout << "blanda inte ... " std::endl;

äh fan vet jag... att vara absolut korrekt är inte min grej när det gäller sånt här 😉

Tovedal
Kommer du hit ofta?
Medlem
Forum Posts: 282
Member Since:
June 29, 2004
sp_UserOfflineSmall Offline
793811
December 11, 2004 - 7:15 pm
sp_Permalink sp_Print

asså... jag är taxam för al hjälp men Win-32 problemet kvarstår...

Rhino
Mina inlägg skrivs i binär kod
Medlem
Forum Posts: 153
Member Since:
August 9, 2001
sp_UserOfflineSmall Offline
794367
December 12, 2004 - 2:21 pm
sp_Permalink sp_Print

Tovedal, jag tror de har missuppfattat din fråga.. jag gissar på fel i kompilatorn/länkaren.. har du testat ladda ner DEV-C++ och installerat igen?

Ta Nytt Projekt, Console Application och testa bara ett av de simplaste programmen som gör något:

#include

int main(){
printf("mm");
getchar(); //EDIT: "pause" är en dålig vana jag har, är förstås ett WIN32-kommando
return 0;
}

Det där med "filen är ej ett giltigt win32-program" kan komma pga bitfel, möjligtvis kanske med virus i kompileraren/länkaren men är inte säker vad din orsak är. Men testa ladda ner/ installera igen, jag kör själv

Bloodshed Dev-C++ (jag antar det är det du menar), version 4.9.9.0 och kan säga att det är totalt underbart. Då har jag också laglig fullversion av MS Visual Studio .NET 2003 men jag föredrar bloodshed

Forum Timezone: Europe/Stockholm
Most Users Ever Online: 694
Currently Online:
Guest(s) 44
Currently Browsing this Page:
1 Guest(s)
Top Posters:
Andreas Galistel: 16287
Jonas Klar: 15897
ilg@dd: 10810
Nyhet: 10607
Mind: 10550
Ctrl: 10355
Gueno: 9881
Guest: 9344
Snorch: 8881
Callister: 8468
Newest Members:
PetrbonFU PetrbonFU
Karine Bembry
Dolores Mcdaniels
Anibal McLeish
Francisca Alt
Alfie Everhart
Lester Huitt
Orlando Jorgensen
Mikki Lundgren
Dakota Kozlowski
Forum Stats:
Groups: 11
Forums: 59
Topics: 146630
Posts: 1300967

 

Member Stats:
Guest Posters: 2
Members: 79425
Moderators: 0
Admins: 11
Administrators: nordicadmin, Henrik Berntsson, Anton Karmehed, Carl Holmberg, Joel Oscarsson, Mikael Linnér, Mikael Schwartz, Andreas Paulsson, Nickebjrk, Mattias Pettersson, EmxL