I have this switch statement to test the case of my Grounded integer variable but my Unity-Monodevelop says I have weird syntax errors within my code which I can’t find. I am hoping someone can tell me what is wrong with it.
private void JumpController () {
if (Input.GetAxis("Jump")) { // if jump switch to action
switch (Grounded) {
0: // On ground;
Jump ();
Grounded = 1;
break;
1: // Jumped once;
Jump ();
Grounded = 2;
break;
2: // Jumped twice;
Debug.print ("Grounded = 2");
break;
default: break;
}
}
}
An Image showing the errors
asked Sep 18, 2016 at 16:13
2
I would recommend adding a case
before your cases. This should fix the errors:
private void JumpController () {
if (Input.GetAxis("Jump")) { // if jump switch to action
switch (Grounded) {
case 0: // On ground;
Jump ();
Grounded = 1;
break;
case 1: // Jumped once;
Jump ();
Grounded = 2;
break;
case 2: // Jumped twice;
Debug.print ("Grounded = 2");
break;
default: break;
}
}
}
answered Sep 18, 2016 at 16:16
Light DrakeLight Drake
1213 silver badges9 bronze badges
3
I get this error :
Parse error: syntax error, unexpected '', expecting endswitch (T_ENDSWITCH) or case (T_CASE) or default (T_DEFAULT) in /var/www/mel-suhaib/application/modules/default/views/scripts/user/user.phtml on line 244
<?php switch ($ext): ?>
line244++> <?php case "pdf": ?>
<img class="timeline-img pull-left" src="../../assets/admin/pages/media/blog/2.jpg" alt="">
<?php break; ?>
<?php case "docx": ?>
<img class="timeline-img pull-left" src="../../assets/admin/pages/media/blog/2.jpg" alt="">
<?php break; ?>
<?php case "zip": ?>
<img class="timeline-img pull-left" src="../../assets/admin/pages/media/blog/2.jpg" alt="">
<?php break; ?>
<?php case "xlsx": ?>
<img class="timeline-img pull-left" src="../../assets/admin/pages/media/blog/2.jpg" alt="">
<?php break; ?>
<?php case "pptx": ?>
<img class="timeline-img pull-left" src="../../assets/admin/pages/media/blog/2.jpg" alt="">
<?php break; ?>
<?php case "rar": ?>
<img class="timeline-img pull-left" src="../../assets/admin/pages/media/blog/2.jpg" alt="">
<?php break; ?>
<?php case "xls": ?>
<img class="timeline-img pull-left" src="../../assets/admin/pages/media/blog/2.jpg" alt="">
<?php break; ?>
<?php case "jpg": ?>
<img class="timeline-img pull-left" src="../../assets/admin/pages/media/blog/2.jpg" alt="">
<?php break; ?>
<?php case "ppt": ?>
<img class="timeline-img pull-left" src="../../assets/admin/pages/media/blog/2.jpg" alt="">
<?php break; ?>
<?php case "doc": ?>
<img class="timeline-img pull-left" src="../../assets/admin/pages/media/blog/2.jpg" alt="">
<?php break; ?>
<?php case "3gp": ?>
<img class="timeline-img pull-left" src="../../assets/admin/pages/media/blog/2.jpg" alt="">
<?php break; ?>
<?php case "mp4": ?>
<img class="timeline-img pull-left" src="../../assets/admin/pages/media/blog/2.jpg" alt="">
<?php break; ?>
<?php case "png": ?>
<img class="timeline-img pull-left" src="../../assets/admin/pages/media/blog/2.jpg" alt="">
<?php break; ?>
<?php endswitch; ?>
Jai Chauhan
3,9553 gold badges35 silver badges61 bronze badges
asked Aug 10, 2016 at 11:49
4
Solved I should instead say:
<?php switch ($ext): case "pdf": ?>
Rather than
<?php switch ($ext): ?> <?php case "pdf": ?>
atiruz
2,75826 silver badges36 bronze badges
answered Aug 10, 2016 at 12:09
SuhaybSuhayb
3,1433 gold badges23 silver badges28 bronze badges
Как новичок в JAVA, я редко использую оператор Switch. Я столкнулся с ошибкой, когда впервые использовал его сегодня. Ниже приведены коды ошибок:
switch(c.get(c.DAY_OF_WEEK)-1) {
char week = 0 ;
случай 1: неделя = ' '; перерыв;
случай 2: неделя = 'два'; перерыв;
случай 3: неделя = 'три'; перерыв;
случай 4: неделя = «четыре»; перерыв;
случай 5: неделя = «пять»; перерыв;
случай 6: неделя = «шесть»; перерыв;
case 0: неделя = 'день'; перерыв;
}
В результате в первой скобке была указана ошибка, и компилятор запросил: Синтаксическая ошибка для токена "{", SwitchLabels ожидается после этого токена.
После долгой отладки я наконец обнаружил, что предложение «char week = 0;» было помещено вне оператора switch, на этот раз оно было правильным.
Подводя итог: в Java, если вам нужна помощь с новой переменной в блоке оператора switch, по возможности поместите объявление переменной вне блока оператора switch.
Home »
C programs »
C common errors programs
Here, we will learn why an error: switch quantity not an integer occurs and how to fix it in C programming language?
Submitted by IncludeHelp, on September 02, 2018
The switch statement only works with integral type of values/variables, integral types like integer, character.
The error switch quantity not an integer occurs if the value/variables passed in the switch statement is not either integer or character.
In this example, consider the statement – switch(choice) – Here, choice is a float variable i.e. we have passed a float variable in switch statement, this is the cause of error switch quantity not an integer.
Example:
#include <stdio.h> int main(void) { float choice = 2.0f; switch(choice){ case 1: printf("Case 1n"); break; case 2: printf("Case 2n"); break; case 3: printf("Case 3n"); break; case 4: printf("Case 4n"); break; default: printf("Case defaultn"); } return 0; }
Output
prog.c: In function ‘main’: prog.c:7:9: error: switch quantity not an integer switch(choice){ ^~~~~~ prog.c:5:9: warning: variable ‘choice’ set but not used [-Wunused-but-set-variable] float choice = 2.0f; ^~~~~~
How to fix?
Use only integral variables/values with the switch statement. In this example, we changed type of choice variable from float to int.
Correct code:
#include <stdio.h> int main(void) { int choice = 2; switch(choice){ case 1: printf("Case 1n"); break; case 2: printf("Case 2n"); break; case 3: printf("Case 3n"); break; case 4: printf("Case 4n"); break; default: printf("Case defaultn"); } return 0; }
Output
Case 2
C Common Errors Programs »
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
#include <iostream> // подключение библиотеки ввода-вывода using namespace std; // подключение стандартного пространства имен для использования библиотек int main() { int sum, sum1, sum2, sum3, p, p1, p2, p3; string Ivanov[15] = {"otsytstvoval", "protiv","vozdergalsya","vozdergalsya","za","za","za","protiv","protiv","protiv","za","za","otsytstvoval","protiv","za" }; // инициализация одномерного массива string Petrov[15] = {"otsytstvoval","za","vozdergalsya","vozdergalsya","protiv","protiv","protiv","za","protiv","protiv","protiv","protiv","otsytstvoval","za","protiv"}; string Sidorov[15] = {"otsytstvoval","protiv","vozdergalsya","vozdergalsya","protiv","protiv","protiv","protiv","protiv","protiv","protiv","protiv","otsytstvoval","protiv","protiv"}; string Antonov[15] = {"otsytstvoval","protiv","vozdergalsya","protiv","protiv","protiv","protiv","za","protiv","za","protiv","protiv","otsytstvoval","protiv","protiv"}; sum=0; sum1=0; sum2=0; sum3=0; cout<<"Rezyltaty golosovanian"; for (int i=0; i<15; i++) //начало цикла подсчета голосов { cout<<"Ivanov["<<i<<"]: "<<Ivanov[i]<<endl; //вывод на экран индекса ячейки массива, а затем содержимого этой ячейки switch (Ivanov[i]) { case ('za'): sum++; break; // подсчет голосов отданных «против» кандидата case ('protiv'): sum1++; break; // «за» кандидата case ('vozdergalsya'): sum2++; break; // «воздержались» case ('otsytstvoval'): sum3++; break; // отсутствовал } p=(sum*100)/30; // перевод голосов отданных «против» кандидата в проценты p1=(sum1*100)/30; // «за» в проценты p2=(sum2*100)/30; // «воздержались» в проценты p3=(sum3*100)/30; // отсутствовали } cout<<"protiv progolosavalo: "<<p<<"% soveta"<<endl; cout<<"za progolosavalo: "<<p1<<"% soveta"<<endl; cout<<"Vozdergalis: "<<p2<<"% soveta"<<endl; cout<<"Dolya otsytstvyushix: "<<p3<<"%"<<endl; } |