I am currently writing a pong clone in C++ with SDL on top. Currently, I have hit a roadblock. If I add a new variable, my game won't launch, and will give "segmentation fault" in the debug terminal.

When I comment out a variable, the following code gives no errors, but otherwise, it just returns "Segmentation Fault" on the debug terminal after flashing the frame the game would normally appear in.

 #ifdef __cplusplus
 #include <cstdlib>
 #else
 #include <stdlib.h>
 #endif
 #ifdef __APPLE__
 #include <SDL/SDL.h>
 #else
 #include <SDL.h>
 #endif
 #include "SDL/SDL_image.h"
 #include "SDL/SDL_framerate.h"


 #include "checkcol.h"

 Uint8 *keystates = SDL_GetKeyState( NULL );

 int main ( int argc, char** argv )
 {
		// initialize SDL video
		if ( SDL_Init( SDL_INIT_EVERYTHING ) < 0 )
		{
			printf( "Unable to init SDL: %s\n", SDL_GetError() );
			return 1;
		}

		atexit(SDL_Quit);// make sure SDL cleans up before exit

		// create a new window
		SDL_Surface* screen = SDL_SetVideoMode(640, 480, 16,SDL_HWSURFACE|SDL_DOUBLEBUF);
		if ( !screen )
		{
			printf("Unable to set 640x480 video: %s\n", SDL_GetError());
			return 1;
		}


		SDL_Surface* left = IMG_Load("left.png");
		SDL_Surface* right = IMG_Load("right.png");
		SDL_Surface* ball = IMG_Load("ball.png");

		if (!left||!right||!ball)
		{
			printf("Unable to load a png: %s\n", SDL_GetError());
			return 1;
		}

		// centre the bitmap on screen
		SDL_Rect leftr;
		leftr.x = 0;
		leftr.y = (screen->h - left->h) / 2;

		SDL_Rect rightr;
		rightr.x = (screen->w - right->w);
		rightr.y = (screen->h - right->h) / 2;

		SDL_Rect ball1;
		ball1.x = ((screen->w - ball->w) / 2)+50;
		ball1.y = (screen->h - ball->h) / 2;

		SDL_Rect ball2;
		ball2.x = ((screen->w - ball->w) / 2)-50;
		ball2.y = (screen->h - ball->h) / 2;

		bool b1xm=0;//describes ball 1's movement in x
		bool b1ym=0;
		bool b2xm=1;
		bool b2ym=1;

		unsigned short lscore=0;
		unsigned short rscore=0;


		FPSmanager * manex;

		SDL_initFramerate( manex );
		// you want the top framerate to be 60 for example
		SDL_setFramerate( manex, 60 );

		// program main loop
		bool done = false;
		while (!done)
		{
							 //this is where my main code is
		} // end main loop

		// free loaded images
		SDL_FreeSurface(left);
		SDL_FreeSurface(right);
		SDL_FreeSurface(ball);

		// all is well
		printf("Exited cleanly\n");
		return 0;
	}