Problem with including <string>

The following program copied from net is not compiling. Please help!

//The headers
#include “SDL/SDL.h”
#include “SDL/SDL_image.h”
#include

//Screen attributes
const int SCREEN_WIDTH = 640;
const int SCREEN_HEIGHT = 480;
const int SCREEN_BPP = 32;

//The surfaces
SDL_Surface *image = NULL;
SDL_Surface *screen = NULL;

SDL_Surface load_image( std::string filename )
{
//The image that’s loaded
SDL_Surface
loadedImage = NULL;

//The optimized image that will be used
SDL_Surface* optimizedImage = NULL;

//Load the image using SDL_image
loadedImage = IMG_Load( filename.c_str() );

//If the image loaded
if( loadedImage != NULL )
{
    //Create an optimized image
    optimizedImage = SDL_DisplayFormat( loadedImage );

    //Free the old image
    SDL_FreeSurface( loadedImage );
}

//Return the optimized image
return optimizedImage;

}

void apply_surface( int x, int y, SDL_Surface* source, SDL_Surface* destination )
{
//Rectangle to hold the offsets
SDL_Rect offset;

//Get offsets
offset.x = x;
offset.y = y;

//Blit the surface
SDL_BlitSurface( source, NULL, destination, &offset );

}

bool init()
{
//Initialize all SDL subsystems
if( SDL_Init( SDL_INIT_EVERYTHING ) == -1 )
{
return false;
}

//Set up the screen
screen = SDL_SetVideoMode( SCREEN_WIDTH, SCREEN_HEIGHT, SCREEN_BPP, SDL_SWSURFACE );

//If there was an error in setting up the screen
if( screen == NULL )
{
    return false;
}

//Set the window caption
SDL_WM_SetCaption( "PNG test", NULL );

//If everything initialized fine
return true;

}

void clean_up()
{
//Free the surface
SDL_FreeSurface( image );

//Quit SDL
SDL_Quit();

}

int main( int argc, char* args[] )
{
//Initialize
if( init() == false )
{
return 1;
}

//Load the image
image = load_image( "look.png" );

//If there was a problem in loading the image
if( image == NULL )
{
    return 1;
}

//Apply the surface to the screen
apply_surface( 0, 0, image, screen );

//Update the screen
if( SDL_Flip( screen ) == -1 )
{
    return 1;
}

//Wait 2 seconds
SDL_Delay( 2000 );

//Free the surface and quit SDL
clean_up();

return 0;

}

error message >> No such file or directory.

Your third #include has nothing after it. No file is specified.From: sdl-bounces@lists.libsdl.org [mailto:sdl-bounces at lists.libsdl.org] On
Behalf Of wheelchairman
Sent: Friday, January 15, 2010 6:23 PM
To: sdl at lists.libsdl.org
Subject: [SDL] problem with including

The following program copied from net is not compiling. Please help!

//The headers
#include “SDL/SDL.h”
#include “SDL/SDL_image.h”
#include

//Screen attributes
const int SCREEN_WIDTH = 640;
const int SCREEN_HEIGHT = 480;
const int SCREEN_BPP = 32;

//The surfaces
SDL_Surface *image = NULL;
SDL_Surface *screen = NULL;

SDL_Surface load_image( std::string filename )
{
//The image that’s loaded
SDL_Surface
loadedImage = NULL;

//The optimized image that will be used
SDL_Surface* optimizedImage = NULL;

//Load the image using SDL_image
loadedImage = IMG_Load( filename.c_str() );

//If the image loaded
if( loadedImage != NULL )
{
//Create an optimized image
optimizedImage = SDL_DisplayFormat( loadedImage );

//Free the old image
SDL_FreeSurface( loadedImage );
}

//Return the optimized image
return optimizedImage;
}

void apply_surface( int x, int y, SDL_Surface* source, SDL_Surface*
destination )
{
//Rectangle to hold the offsets
SDL_Rect offset;

//Get offsets
offset.x = x;
offset.y = y;

//Blit the surface
SDL_BlitSurface( source, NULL, destination, &offset );
}

bool init()
{
//Initialize all SDL subsystems
if( SDL_Init( SDL_INIT_EVERYTHING ) == -1 )
{
return false;
}

//Set up the screen
screen = SDL_SetVideoMode( SCREEN_WIDTH, SCREEN_HEIGHT, SCREEN_BPP,
SDL_SWSURFACE );

//If there was an error in setting up the screen
if( screen == NULL )
{
return false;
}

//Set the window caption
SDL_WM_SetCaption( “PNG test”, NULL );

//If everything initialized fine
return true;
}

void clean_up()
{
//Free the surface
SDL_FreeSurface( image );

//Quit SDL
SDL_Quit();
}

int main( int argc, char* args[] )
{
//Initialize
if( init() == false )
{
return 1;
}

//Load the image
image = load_image( “look.png” );

//If there was a problem in loading the image
if( image == NULL )
{
return 1;
}

//Apply the surface to the screen
apply_surface( 0, 0, image, screen );

//Update the screen
if( SDL_Flip( screen ) == -1 )
{
return 1;
}

//Wait 2 seconds
SDL_Delay( 2000 );

//Free the surface and quit SDL
clean_up();

return 0;
}

error message >> No such file or directory.

This last line misses the include file. Delete the line or give a file.
How did you compile the program?Am 16.01.2010 01:23, schrieb wheelchairman:

//The headers
#include “SDL/SDL.h”
#include “SDL/SDL_image.h”
#include


Christoph Nelles

E-Mail : @Christoph_Nelles
Jabber : eazrael at evilazrael.net ICQ : 78819723

PGP-Key : ID 0x424FB55B on subkeys.pgp.net
or http://evilazrael.net/pgp.txt

Heh, I bet it was posted on a web page, but < and > weren’t escaped,
so the “” ended up looking like an HTML tag. :wink:

Careful from where you copy.

-bill!On Sat, Jan 16, 2010 at 01:25:10AM +0100, Christoph Nelles wrote:

Am 16.01.2010 01:23, schrieb wheelchairman:

//The headers
#include “SDL/SDL.h”
#include “SDL/SDL_image.h”
#include

This last line misses the include file. Delete the line or give a file.
How did you compile the program?

If that is why we didn’t see it, then perhaps he meant to compile it with
<string.h> and not “string” (with the less than, greater than).

Looking at the code there is nothing that uses the STRING library, so he can
probably just switch it to the C string.h header.> ----- Original Message -----

From: sdl-bounces@lists.libsdl.org [mailto:sdl-bounces at lists.libsdl.org] On
Behalf Of Bill Kendrick
Sent: Friday, January 15, 2010 6:53 PM
To: SDL Development List
Subject: Re: [SDL] problem with including

On Sat, Jan 16, 2010 at 01:25:10AM +0100, Christoph Nelles wrote:

Am 16.01.2010 01:23, schrieb wheelchairman:

//The headers
#include “SDL/SDL.h”
#include “SDL/SDL_image.h”
#include

This last line misses the include file. Delete the line or give a file.
How did you compile the program?

Heh, I bet it was posted on a web page, but < and > weren’t escaped,
so the “” ended up looking like an HTML tag. :wink:

Careful from where you copy.

-bill!


SDL mailing list
SDL at lists.libsdl.org
http://lists.libsdl.org/listinfo.cgi/sdl-libsdl.org

2010/1/16 Ken Rogoway

If that is why we didn’t see it, then perhaps he meant to compile it with
<string.h> and not “string” (with the less than, greater than).

Looking at the code there is nothing that uses the STRING library, so he
can
probably just switch it to the C string.h header.

On
Behalf Of Bill Kendrick

//The headers
#include “SDL/SDL.h”
#include “SDL/SDL_image.h”
#include

This last line misses the include file. Delete the line or give a file.
How did you compile the program?

Heh, I bet it was posted on a web page, but < and > weren’t escaped,
so the “” ended up looking like an HTML tag. :wink:

Careful from where you copy.

-bill!


SDL mailing list
SDL at lists.libsdl.org
http://lists.libsdl.org/listinfo.cgi/sdl-libsdl.org


SDL mailing list
SDL at lists.libsdl.org
http://lists.libsdl.org/listinfo.cgi/sdl-libsdl.org

SDL_Surface *load_image( std::string filename )
No I can not see anything :slight_smile: and the C string header is in C++.> -----Original Message-----

From: sdl-bounces at lists.libsdl.org [mailto:sdl-bounces at lists.libsdl.org]
Sent: Friday, January 15, 2010 6:53 PM
To: SDL Development List
Subject: Re: [SDL] problem with including
On Sat, Jan 16, 2010 at 01:25:10AM +0100, Christoph Nelles wrote:

Am 16.01.2010 01:23, schrieb wheelchairman: