dev.gamez.lv Forum Index dev.gamez.lv
Latvian Game Developers Community
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups 

SDL kljuudas
Goto page 1, 2  Next
 
dev.gamez.lv Forum Index -> Programmēšana
View previous topic :: View next topic  
Author Message
Guest






PostPosted: Sat Aug 27, 2005 8:23 am    Post subject: SDL kljuudas

Code:

   SDL_Surface *p1 = SDL_LoadBMP("p1.bmp");
   SDL_Surface *p2 = SDL_LoadBMP("p2.bmp");


kljuudu pazinjojums:
Quote:
error C2275: 'SDL_Surface' : illegal use of this type as an expression
error C2065: 'p1' : undeclared identifier
error C2275: 'SDL_Surface' : illegal use of this type as an expression
error C2065: 'p2' : undeclared identifier


Lietoju VC7.1(.Net 2003) ar jaunaakajiem SDL libiem.
Back to top
Guest






PostPosted: Sat Aug 27, 2005 9:25 am    Post subject: OPĀ

Es pat redzu, ka tev diezin vai ir iekļauts SDL.h, kuru es pat savā datorā neatradu.
Bet tas ir lieks, tas SDL.h, jo reāli var iztikt ar šo:

#include <iostream.h> // Neesmu pārliecināts vai tā
Tad ir vēl pāris šādu #include

using namespace sdl;

Tad raksta sdl:: un tālāk seko tas, ko tu gribi. Bet reāli man liekas, ka ir ļoti liela atšķirība.
Arī GiGas lietotais strings.h ir jāpārlabo uz string.h, jo tāds strings.h vienkārši nav iekš Visual Studio NET 2003 Enterprise Edition.
Back to top
Himself
Indago dalībnieks
Indago dalībnieks


Joined: 13 Apr 2004
Posts: 87
Location: Rīga

PostPosted: Sat Aug 27, 2005 10:37 am    Post subject:

es lietoju:
Code:
 #include <SDL/SDL.h>

un pēc tam vnkārši izsaucu SDL funkčas, pirmajā reizē man arī bija problēmas piedabūt SDL pei dzīvības - šādos jaut'jumos vislabāk griezties pie sava SDL izplatītāja un iemest acis tutoriāļos.
_________________
Paldies
Back to top
View user's profile Send e-mail
bubu
Indago Uzvarētājs
Indago Uzvarētājs


Joined: 23 Mar 2004
Posts: 3223
Location: Riga

PostPosted: Sat Aug 27, 2005 10:48 pm    Post subject:

Konamis, tu esi nepārspējams āksts.
Guest: visdrīzāk nav atrasta SDL_Surface deklarācija. Pārbaudi vai pareizi esi iekļāvis header failus.
Back to top
View user's profile Send e-mail
Guest






PostPosted: Sun Aug 28, 2005 3:50 pm    Post subject:

nenormaali mistiska kljuuda Shocked

man kods bija shaadaa formaa:
main(){
...
sdl_surface...
...
}

a kad izdariiju shaadi, tad viss aizgaaja:
main(){
sdl_surface...
...
}
Back to top
bubu
Indago Uzvarētājs
Indago Uzvarētājs


Joined: 23 Mar 2004
Posts: 3223
Location: Riga

PostPosted: Sun Aug 28, 2005 4:25 pm    Post subject:

Vai tik semikols nebij iepriekšējā rindā aizmirst? (vai kāda iekava/figūriekava)
Back to top
View user's profile Send e-mail
Hobits
Indago organizātors


Joined: 04 Jul 2003
Posts: 491
Location: Riga

PostPosted: Sun Aug 28, 2005 4:31 pm    Post subject:

Interesanti ka taads main() kompileejaas. Uz vc6 vinsh izdotu unesolveetu externaali jo main'am jaabuut c standartaa: int main(int argc, char *argv[])
Luuk kas bija rakstiits SDL_main headerii:
Code:

/* The application's main() function must be called with C linkage,
   and should be declared like this:
#ifdef __cplusplus
extern "C"
#endif
   int main(int argc, char *argv[])
   {
   }
 */

Bet iespeejams tas neaatiecas uz vc.net.
Back to top
View user's profile Send e-mail Visit poster's website
bubu
Indago Uzvarētājs
Indago Uzvarētājs


Joined: 23 Mar 2004
Posts: 3223
Location: Riga

PostPosted: Sun Aug 28, 2005 5:07 pm    Post subject:

Iekš C valodas jau padotos parametrus no steka atbrīvo izsaucamais kods. Tāpēc ja izsauksi funkciju ar vairāk/mazāk parametriem nekā norādīts, tad jau nekas nenokārsies (ja protams necentīsies izmantot nepadotus parametrus), atšķirībā, piemēram, no paskāla, kur noteikti viss apkārsies šādā situācijā.

Tā kā tā parametru kontrole ir papildus drošības čekings, nevis nepieciešamība.
Back to top
View user's profile Send e-mail
Hobits
Indago organizātors


Joined: 04 Jul 2003
Posts: 491
Location: Riga

PostPosted: Sun Aug 28, 2005 5:22 pm    Post subject:

Es biju domaajis shito no SDL_main.h:
#define main SDL_main
extern C_LINKAGE int SDL_main(int argc, char *argv[]);

Ja tava main funkcija neatbilst tam paraugam tad sanaak:
unresolved external symbol _SDL_main

[edit]Pielauju tas ir droshiibai jo pats sdls var izmantot tos parametrus iekskjiigi.
Back to top
View user's profile Send e-mail Visit poster's website
elvman
Indago Uzvarētājs
Indago Uzvarētājs


Joined: 09 Apr 2003
Posts: 1278
Location: Kuldiga

PostPosted: Mon Aug 29, 2005 9:24 am    Post subject:

#define main SDL_main
extern C_LINKAGE int SDL_main(int argc, char *argv[]);

Kaada jeega tev defineet SDL_main? Gribi lai koda sanaak vairaak rindinjas? Nevari vienkaarshi rakstiit - extern C_LINKAGE int main(int argc, char *argv[]);? Starp citu tevis rakstiitais kods nekad nestraadaas.

Quote:
Ja tava main funkcija neatbilst tam paraugam tad sanaak:
unresolved external symbol _SDL_main

Ja arii atbilst paraugam sanaak: unresolved external symbol _main.
main vienmeer ir un buus main, tu vinju nevari defineet ar citu nosaukumu.
_________________
long time; /* know C */
Back to top
View user's profile Visit poster's website
Hobits
Indago organizātors


Joined: 04 Jul 2003
Posts: 491
Location: Riga

PostPosted: Mon Aug 29, 2005 9:33 am    Post subject:

Hobits wrote:
...no SDL_main.h

To nerakstu es, tas jau ir defineets no sdl puses.

Quote:
main vienmeer ir un buus main, tu vinju nevari defineet ar citu nosaukumu.

#define mymain main ?

Ok, es nezinu kaapeec SDLaa taa ir uztaisiits, vabuut man ir kaut kaada vecaaka versija.
Back to top
View user's profile Send e-mail Visit poster's website
bubu
Indago Uzvarētājs
Indago Uzvarētājs


Joined: 23 Mar 2004
Posts: 3223
Location: Riga

PostPosted: Mon Aug 29, 2005 11:24 am    Post subject:

SDL'am tas ir tāpēc, ka viņam ir sava main funkcija, kas veici inicializāciju, un tā tava main, ko tu definē īstenībā ir SDL_main, kuru izsauc tā īstā main fja.
Back to top
View user's profile Send e-mail
elvman
Indago Uzvarētājs
Indago Uzvarētājs


Joined: 09 Apr 2003
Posts: 1278
Location: Kuldiga

PostPosted: Mon Aug 29, 2005 12:31 pm    Post subject:

Quote:
#define mymain main

No saakuma paarbaudi vai tieshaam straadaa un tad posto. (Varu pateikt priekshaa - NESTRAADAA UN NEKAD NESTRAADAAS)

P.S Ja tu izmantosi funkciju mymain tad kompilators tev vienmeer izmetiis: unresolved external symbol _main
_________________
long time; /* know C */
Back to top
View user's profile Visit poster's website
Hobits
Indago organizātors


Joined: 04 Jul 2003
Posts: 491
Location: Riga

PostPosted: Mon Aug 29, 2005 12:58 pm    Post subject:

elvman wrote:
Quote:
#define mymain main

No saakuma paarbaudi vai tieshaam straadaa un tad posto. (Varu pateikt priekshaa - NESTRAADAA UN NEKAD NESTRAADAAS)

P.S Ja tu izmantosi funkciju mymain tad kompilators tev vienmeer izmetiis: unresolved external symbol _main


Tici man pirms postoshanas pameegjinaaju un ar DevC straadaa.
Un kaapeec lai nevareetu paardefineet, taada pati funkcija kaa jebkura cita?
Back to top
View user's profile Send e-mail Visit poster's website
elvman
Indago Uzvarētājs
Indago Uzvarētājs


Joined: 09 Apr 2003
Posts: 1278
Location: Kuldiga

PostPosted: Mon Aug 29, 2005 1:05 pm    Post subject:

Ar DevC neesmu njeemies taadeelj nezinu (es domaaju ka visi kompilatori straadaa daudz maz peec viena principa, bet laikam taa nav), bet uz Microsoft kompilatoriem tev nekad nekas taads nesanaaks (vinsh tavaa kodaa meklee tieshi main funkciju un ja tu to paardefinee ar citu nosaukumu nekas neizdosies).
_________________
long time; /* know C */
Back to top
View user's profile Visit poster's website
Display posts from previous:   
dev.gamez.lv Forum Index -> Programmēšana All times are GMT + 2 Hours
Goto page 1, 2  Next
Page 1 of 2

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group