Help with the errors please. I would be great full.

This is my first large line of code and I continue to run into issues. A main one is
"not within a switch statement". Please help

//www.elegoo.com

#include <Servo.h>  //servo
Servo myservo;      //servo
     

#define ENA  5
#define ENB  6
#define IN1  7
#define IN2  8
#define IN3  9
#define IN4  11
#define LED1  13

int pos = 90;
unsigned char carSpeed = 250;
bool state = LOW;
char getstr;

void forward(){
myservo.write(pos);
  digitalWrite(ENA,HIGH);
  digitalWrite(ENB,HIGH);
  digitalWrite(IN1,HIGH);
  digitalWrite(IN2,LOW);
  digitalWrite(IN3,LOW);
  digitalWrite(IN4,HIGH);
  Serial.println("Forward");
   digitalWrite(ENA,LOW);
   digitalWrite(ENB,LOW);
}

void back(){
  myservo.write(pos);
  digitalWrite(ENA,HIGH);
  digitalWrite(ENB,HIGH);
  digitalWrite(IN1,LOW);
  digitalWrite(IN2,HIGH);
  digitalWrite(IN3,HIGH);
  digitalWrite(IN4,LOW);
  Serial.println("Back");
   digitalWrite(ENA,LOW);
   digitalWrite(ENB,LOW);
}

void left(){
  myservo.write(pos);
  analogWrite(ENA,carSpeed);
  analogWrite(ENB,carSpeed);
  digitalWrite(IN1,LOW);
  digitalWrite(IN2,HIGH);
  digitalWrite(IN3,LOW);
  digitalWrite(IN4,HIGH);
  Serial.println("Left");
   digitalWrite(ENA,LOW);
   digitalWrite(ENB,LOW);
}

void right(){
  myservo.write(pos);
  analogWrite(ENA,carSpeed);
  analogWrite(ENB,carSpeed);
  digitalWrite(IN1,HIGH);
  digitalWrite(IN2,LOW);
  digitalWrite(IN3,HIGH);
  digitalWrite(IN4,LOW);
  Serial.println("Right");
    digitalWrite(ENA,LOW);
   digitalWrite(ENB,LOW);
}
void RightForwardSlow(){
   for (pos = 90; pos <= 135; pos += 1)
   digitalWrite(ENA,HIGH);
  digitalWrite(ENB,HIGH);
  digitalWrite(IN1,HIGH);
  digitalWrite(IN2,LOW);
  digitalWrite(IN3,LOW);
  digitalWrite(IN4,HIGH);
  Serial.println("RightForwardSlow");
  myservo.write(pos);
     digitalWrite(ENA,LOW);
   digitalWrite(ENB,LOW);
}

    void RightForwardFast(){
   for (pos = 90; pos <= 160; pos += 1)
   digitalWrite(ENA,HIGH);
  digitalWrite(ENB,HIGH);
  digitalWrite(IN1,HIGH);
  digitalWrite(IN2,LOW); //RightForwardFast
  digitalWrite(IN3,LOW);
  digitalWrite(IN4,HIGH);
  Serial.println("RightForwardFast");
  myservo.write(pos);
     digitalWrite(ENA,LOW);
   digitalWrite(ENB,LOW);
   }

void LeftForwardSlow(){
   for (pos = 90; pos <= 45; pos += 1)
   digitalWrite(ENA,HIGH);
  digitalWrite(ENB,HIGH);
  digitalWrite(IN1,HIGH);
  digitalWrite(IN2,LOW);
  digitalWrite(IN3,LOW);
  digitalWrite(IN4,HIGH);
  Serial.println("LeftForwardSlow");
  myservo.write(pos);
     digitalWrite(ENA,LOW);
   digitalWrite(ENB,LOW);
}
void LeftForwardFast(){
   for (pos = 90; pos <= 20; pos += 1)
   digitalWrite(ENA,HIGH);
  digitalWrite(ENB,HIGH);
  digitalWrite(IN1,HIGH);
  digitalWrite(IN2,LOW);
  digitalWrite(IN3,LOW);
  digitalWrite(IN4,HIGH);
  Serial.println("LeftForwardFast");
  myservo.write(pos);
     digitalWrite(ENA,LOW);
   digitalWrite(ENB,LOW);
}
void stop(){
  myservo.write(pos);
  digitalWrite(ENA,LOW);
  digitalWrite(ENB,LOW);
  Serial.println("Stop!");
}
void BackSlowRight(){
   for (pos = 90; pos <= 135; pos += 1)
  digitalWrite(ENA,HIGH);
  digitalWrite(ENB,HIGH);
  digitalWrite(IN1,LOW);
  digitalWrite(IN2,HIGH);
  digitalWrite(IN3,HIGH);
  digitalWrite(IN4,LOW);
  Serial.println("BackSlowRight");
    myservo.write(pos);
       digitalWrite(ENA,LOW);
   digitalWrite(ENB,LOW);
}
void BackFastRight(){
   for (pos = 90; pos <= 160; pos += 1)
  digitalWrite(ENA,HIGH);
  digitalWrite(ENB,HIGH);
  digitalWrite(IN1,LOW);
  digitalWrite(IN2,HIGH);
  digitalWrite(IN3,HIGH);
  digitalWrite(IN4,LOW);
  Serial.println("BackFastRight");
    myservo.write(pos);
       digitalWrite(ENA,LOW);
   digitalWrite(ENB,LOW);
   }
   void BackFastLeft(){
   for (pos = 90; pos <= 20; pos += 1)
  digitalWrite(ENA,HIGH);
  digitalWrite(ENB,HIGH);
  digitalWrite(IN1,LOW);
  digitalWrite(IN2,HIGH);
  digitalWrite(IN3,HIGH);
  digitalWrite(IN4,LOW);
  Serial.println("BackFastLeft");
    myservo.write(pos);
       digitalWrite(ENA,LOW);
   digitalWrite(ENB,LOW);
   }
     void BackSlowLeft(){
   for (pos = 90; pos <= 45; pos += 1)
  digitalWrite(ENA,HIGH);
  digitalWrite(ENB,HIGH);
  digitalWrite(IN1,LOW);
  digitalWrite(IN2,HIGH);
  digitalWrite(IN3,HIGH);
  digitalWrite(IN4,LOW);
  Serial.println("BackSlowLeft");
    myservo.write(pos);
       digitalWrite(ENA,LOW);
   digitalWrite(ENB,LOW);
   }
void stateChange(){
  state = !state;
  digitalWrite(LED1, state);
  Serial.println("Light"); 
}
       void DontGo(){
        myservo.write(pos);
       digitalWrite(ENA,LOW);
   digitalWrite(ENB,LOW);
   Serial.println("stop");
     }
void setup() {
  Serial.begin(9600);
  myservo.attach(9);  // attaches the servo on pin 9 to the servo object
  pinMode(LED1, OUTPUT); //this down to stop is motor
  pinMode(IN1,OUTPUT);
  pinMode(IN2,OUTPUT);
  pinMode(IN3,OUTPUT);
  pinMode(IN4,OUTPUT);
  pinMode(ENA,OUTPUT);
  pinMode(ENB,OUTPUT);
  stop();
}


 
void loop() {
  getstr = Serial.read();
  Serial.print(getstr);
  switch(getstr)
    case 'f': forward(); return;
    case 'm': back();   return;
    case 'l': left();   return;
    case 'r': right();  return;
    case 'n': RightForwardSlow(); return;
    case 'o': RightForwardFast(); return;
    case 'd': LeftForwardSlow(); return;
    case 'h': LeftForwardFast(); return;
    case 'k': BackSlowRight(); return;
    case 'g': BackFastRight(); return;
    case 'u': BackFastLeft(); return;
    case 'w': BackSlowLeft(); return;
    case 'a': stateChange(); return;
    case 's': DontGo(); return;
    default:  return;
  }

The Arduino help page (google Arduino Reference) gives the syntax as follows:-

switch (var) {
case label1:
// statements
break;
case label2:
// statements
break;
default:
// statements
break;
}

Steve

When you use tools->auto format in the IDE, the problem probably becomes clear (look at the indentations)

 switch (getstr)
  case 'f': forward(); return;
case 'm': back();   return;

You're missing { and } for the switch/case

 switch (getstr)
  {
    // cases here
  }

Thank you for the quick help. I found out that you can not have more than one line of code under getser.

void loop() { 
  getstr = Serial.read();
  Serial.print(getstr);
  switch(getstr)
    case 'f': forward(); return;
    switch(getstr)
    case 'm': back();   return;
    switch(getstr)
    case 'l': left();   return;
    switch(getstr)
    case 'r': right();  return;
    switch(getstr)
    case 'n': RightForwardSlow(); return;
    switch(getstr)
    case 'o': RightForwardFast(); return;
    switch(getstr)
    case 'd': LeftForwardSlow(); return;
    switch(getstr)
    case 'h': LeftForwardFast(); return;
    switch(getstr)
    case 'k': BackSlowRight(); return;
    switch(getstr)
    case 'g': BackFastRight(); return;
    switch(getstr)
    case 'u': BackFastLeft(); return;
    switch(getstr)
    case 'w': BackSlowLeft(); return;
    switch(getstr)
    case 'a': stateChange(); return;
    switch(getstr)
    case 's': DontGo(); return;
    switch(getstr)
    default:  return;
    
  }

That's totally wrong. Go back and look at the Switch / Case Reference Page.

You don't need to use return inside switch.