前言:
最近在阅读某康的代码时,遇到了goto err,然后发现在c++中没有这个用法,因此找个c++支持的语法做替换。
C语言中goto err的用法:
#include <stdio.h>
int main()
{
int input_num = 10;
int num_1 = 2;
int num_2 = 4;
if (input_num % num_1 == 0)
{
printf("input num can be divided by 2.\n");
}
else
{
printf("input num can not be divided by 2.\n");
goto err;
}
if (input_num % num_2 == 0)
{
printf("input num can be divided by 4.\n");
}
else
{
printf("input num can not be divided by 4.\n");
goto err;
}
return 0;
err:
printf("The input data does not meet the requirements.\n");
return -1;
}
C++语言中do while的用法:
#include <stdio.h>
int main()
{
int input_num = 10;
int num_1 = 2;
int num_2 = 4;
do
{
if(input_num % num_1 == 0)
{
printf("input num can be divided by 2.\n");
}
else
{
printf("input num can not be divided by 2.\n");
break;
}
if(input_num % num_2 == 0)
{
printf("input num can be divided by 4.\n");
}
else
{
printf("input num can not be divided by 4.\n");
break;
}
return 0;
}while(0);
printf("The input data does not meet the requirements.\n");
return -1;
}
发现在c++的用法中,和python的用法很接近。还是习惯c++的语法。