/
githubmirror
/
CPlusPlusThings
Обзор
Документация
Войти
/
githubmirror
/
CPlusPlusThings
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
basic_content/macro/do_while.cpp
79 строк
1 KB
zhangxing
support bazel complie this project and format code.
30 мар 2024, 17:00
30 мар 2024, 17:00
3c8a3f2
Код
Авторство
О чём код?
#include <iostream> #include <malloc.h> using namespace std; #define f1() cout << "f1()" << endl; #define f2() cout << "f2()" << endl; #define fun() \ { \ f1(); \ f2(); \ } #define fun1() \ do { \ f1(); \ f2(); \ } while (0) int f() { int *p = (int *)malloc(sizeof(int)); *p = 10; cout << *p << endl; #ifndef DEBUG int error = 1; #endif if (error) goto END; // dosomething END: cout << "free" << endl; free(p); return 0; } int ff() { int *p = (int *)malloc(sizeof(int)); *p = 10; cout << *p << endl; do { #ifndef DEBUG int error = 1; #endif if (error) break; // dosomething } while (0); cout << "free" << endl; free(p); return 0; } int fc() { int k1 = 10; cout << k1 << endl; do { int k1 = 100; cout << k1 << endl; } while (0); cout << k1 << endl; return 0; } int main() { if (1 > 0) fun(); if (2 > 0) fun1(); f(); ff(); fc(); return 0; }