Background flicker needs eliminating

Hi I am a beginner in c++, opengl and sdl2. I’m trying to hack together some code featuring a game loop in sdl2 and some open gl shape drawring with a view to moving the shape around in real time and then doing some collision detection. The only problem is when I use SDL_SetRenderDrawColor to clear the screen the background flashes black and white while the loop is running. Can somebody help me set the background colour and then run the loop without the flickering? Thanks.

`// -lSDL2 -lGL

#include <stdio.h>
#include <stdint.h>
#include <assert.h>
#include <SDL2/SDL.h>
#include <GL/glut.h> // GLUT, include glu.h and gl.h

typedef int32_t i32;
typedef uint32_t u32;
typedef int32_t b32;

#define WinWidth 500
#define WinHeight 500

void display() {

glBegin(GL_TRIANGLES); // Begin drawing the pyramid with 4 triangles
// Front
glColor3f(1.0f, 0.0f, 0.0f); // Red
glVertex3f( 0.0f, 1.0f, 0.0f);
glColor3f(0.0f, 1.0f, 0.0f); // Green
glVertex3f(-1.0f, -1.0f, 1.0f);
glColor3f(0.0f, 0.0f, 1.0f); // Blue
glVertex3f(1.0f, -1.0f, 1.0f);
glEnd(); // Done drawing the pyramid

}

void display2() {
//glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
glBegin(GL_QUADS);
glColor3f(0.5f, 0.0f, 1.0f); // make this vertex purple
glVertex2f(-0.75, 0.75);
glColor3f(1.0f, 0.0f, 0.0f); // make this vertex red
glVertex2f(-0.75, -0.75);
glColor3f(0.0f, 1.0f, 0.0f); // make this vertex green
glVertex2f(0.75, -0.75);
glColor3f(1.0f, 1.0f, 0.0f); // make this vertex yellow
glVertex2f(0.75, 0.75);
glEnd();
}

int main (int ArgCount, char **Args)
{
u32 WindowFlags = SDL_WINDOW_OPENGL;
SDL_Window Window = SDL_CreateWindow(“OpenGL Test”, 0, 0, WinWidth, WinHeight, WindowFlags);
assert(Window);
SDL_GLContext Context = SDL_GL_CreateContext(Window);
SDL_Renderer
renderer;
renderer = SDL_CreateRenderer(Window, -1, 0);

b32 Running = 1;
b32 FullScreen = 0;

    SDL_SetRenderDrawColor(renderer, 255, 255, 255, 255);

    // Clear the entire screen to our selected color.
    SDL_RenderClear(renderer);

SDL_RenderPresent(renderer);

while (Running)

{
SDL_Event Event;
while (SDL_PollEvent(&Event))
{
if (Event.type == SDL_KEYDOWN)
{
switch (Event.key.keysym.sym)
{
case SDLK_ESCAPE:
Running = 0;
break;
case ‘f’:
FullScreen = !FullScreen;
if (FullScreen)
{
SDL_SetWindowFullscreen(Window, WindowFlags | SDL_WINDOW_FULLSCREEN_DESKTOP);
}
else
{
SDL_SetWindowFullscreen(Window, WindowFlags);
}
break;
default:
break;
}
}
else if (Event.type == SDL_QUIT)
{
Running = 0;
}
}
display2();
SDL_GL_SwapWindow(Window);
}
SDL_DestroyWindow(Window);
SDL_Quit();
return 0;
}
`

Use 3 backticks to start a code block, then 3 to end it