Yes. You use the 'goto' instruction.
Example:
if (some_label== 1)
goto foo;
(more C code)
foo:
(C code)
One thing to keep in mind is that you cannot access the memory address of C code labels.
For example, in Assembly, I can get the address of any label in my code, like this:
label1:
(some ASM code)
mov edx,offset label1 ;EDX holds the code address of label 1
In C with built-in Assembly language, this would not work:
goto mylabel;
mylabel:
(some C code)
_asm {
mov edx,offset mylabel /* error! 'mylabel' not found */
}
/* You can't get the address of mylabel. You can only access C data labels. You CAN get the address to a C procedure though. */
P.S.
Since you know Assembly language, you know that using GOTO in C/C++ can be more efficient than trying to avoid using it. Those who don't know this should learn assembly language so they can stop writing bloated, slow code.