Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <string.h>
- #define CBBUNTZ_TOKEN_COMBINE(_1, _2) _1 _2
- #define CBBUNTZ_TOKEN_COMBINE3(_1, _2, _3) _1 _2 _3
- #define CBBUNTZ_LESS_THAN_COMPARISON_OPERATOR <
- #define CBBUNTZ_EQUALS_ASSIGNMENT_OPERATOR =
- #define CBBUNTZ_EQUAL_TO_COMPARISON_OPERATOR ==
- #define CBBUNTZ_COMMA ,
- #define CBBUNTZ_SEMICOLON ;
- #define CBBUNTZ_ASTERISK *
- #define CBBUNTZ_ADDITION_OPERATOR +
- #define CBBUNTZ_INCREMENT_OPERATOR ++
- #define CBBUNTZ_0 0
- #define CBBUNTZ_1 1
- #define CBBUNTZ_2 2
- #define CBBUNTZ_3 3
- #define CBBUNTZ_4 4
- #define CBBUNTZ_5 5
- #define CBBUNTZ_6 6
- #define CBBUNTZ_7 7
- #define CBBUNTZ_8 8
- #define CBBUNTZ_9 9
- #define CBBUNTZ_10 10
- #define CBBUNTZ_ARGUMENT_COUNT argc
- #define CBBUNTZ_ARGUMENT_VECTOR argv
- #define CBBUNTZ_ARRAY array
- #define CBBUNTZ_LOWERCASE_LETTER_C c
- #define CBBUNTZ_LOWERCASE_LETTER_S s
- #define CBBUNTZ_FORMAT_STRING_FOR_CHARACTER "%c"
- #define CBBUNTZ_FORMAT_STRING_FOR_INTEGER "%d"
- #define CBBUNTZ_CHARACTER char
- #define CBBUNTZ_CONSTANT_AKA_IMMUTABLE_VARIABLE_DESIGNATOR_KEYWORD const
- #define CBBUNTZ_INITIALIZE_FOR_LOOP for
- #define CBBUNTZ_HELLO_STRING "Hello"
- #define CBBUNTZ_COMMA_STRING ","
- #define CBBUNTZ_SPACE_STRING " "
- #define CBBUNTZ_LOWERCASE_LETTER_I_STRING "i"
- #define CBBUNTZ_LOWERCASE_LETTER_I i
- #define CBBUNTZ_INTEGER_TYPE_DESIGNATOR int
- #define CBBUNTZ_MAIN_FUNCTION main
- #define CBBUNTZ_NEWLINE_CHARACTER '\n'
- #define CBBUNTZ_NEWLINE_STRING "\n"
- #define CBBUNTZ_FUNCTION_THAT_FORMATS_A_STRING_AND_THEN_PRINTS_THE_RESULT_TO_THE_TERMINAL_AFTERWORDS printf
- #define CBBUNTZ_PUTCHARACTER putchar
- #define CBBUNTZ_RETURN return
- #define CBBUNTZ_FUNCTION_THAT_CALCULATES_LENGTH_OF_CHARACTER_ARRAY strlen
- #define CBBUNTZ_WORLD_STRING "World"
- #define CBBUNTZ_EXCLAMATION_MARK_STRING "!"
- #define CBBUNTZ_OPEN_CURLY_BRACE {
- #define CBBUNTZ_CLOSE_CURLY_BRACE }
- CBBUNTZ_TOKEN_COMBINE(CBBUNTZ_INTEGER_TYPE_DESIGNATOR,CBBUNTZ_MAIN_FUNCTION)
- (CBBUNTZ_INTEGER_TYPE_DESIGNATOR CBBUNTZ_ARGUMENT_COUNT CBBUNTZ_COMMA
- CBBUNTZ_CHARACTER CBBUNTZ_ASTERISK CBBUNTZ_ARGUMENT_VECTOR[])
- CBBUNTZ_TOKEN_COMBINE3(CBBUNTZ_OPEN_CURLY_BRACE,
- CBBUNTZ_TOKEN_COMBINE3(
- CBBUNTZ_CONSTANT_AKA_IMMUTABLE_VARIABLE_DESIGNATOR_KEYWORD,
- CBBUNTZ_INTEGER_TYPE_DESIGNATOR,CBBUNTZ_ARRAY)
- CBBUNTZ_TOKEN_COMBINE([,])CBBUNTZ_TOKEN_COMBINE(
- CBBUNTZ_EQUALS_ASSIGNMENT_OPERATOR,CBBUNTZ_OPEN_CURLY_BRACE)
- CBBUNTZ_0 CBBUNTZ_COMMA CBBUNTZ_1 CBBUNTZ_COMMA CBBUNTZ_2 CBBUNTZ_COMMA CBBUNTZ_3 CBBUNTZ_COMMA CBBUNTZ_4
- CBBUNTZ_COMMA CBBUNTZ_5 CBBUNTZ_COMMA CBBUNTZ_6 CBBUNTZ_COMMA CBBUNTZ_7 CBBUNTZ_COMMA CBBUNTZ_8
- CBBUNTZ_COMMA CBBUNTZ_9 CBBUNTZ_TOKEN_COMBINE(CBBUNTZ_CLOSE_CURLY_BRACE,CBBUNTZ_SEMICOLON)
- CBBUNTZ_INITIALIZE_FOR_LOOP(CBBUNTZ_INTEGER_TYPE_DESIGNATOR
- CBBUNTZ_TOKEN_COMBINE3(CBBUNTZ_TOKEN_COMBINE3(
- CBBUNTZ_LOWERCASE_LETTER_I,CBBUNTZ_EQUALS_ASSIGNMENT_OPERATOR,CBBUNTZ_0),
- CBBUNTZ_TOKEN_COMBINE3(CBBUNTZ_SEMICOLON,
- CBBUNTZ_LOWERCASE_LETTER_I,CBBUNTZ_LESS_THAN_COMPARISON_OPERATOR),
- CBBUNTZ_TOKEN_COMBINE3(CBBUNTZ_10,
- CBBUNTZ_SEMICOLON,CBBUNTZ_LOWERCASE_LETTER_I)CBBUNTZ_INCREMENT_OPERATOR))
- CBBUNTZ_TOKEN_COMBINE(CBBUNTZ_OPEN_CURLY_BRACE,
- CBBUNTZ_FUNCTION_THAT_FORMATS_A_STRING_AND_THEN_PRINTS_THE_RESULT_TO_THE_TERMINAL_AFTERWORDS)
- (CBBUNTZ_TOKEN_COMBINE3(CBBUNTZ_LOWERCASE_LETTER_I_STRING,CBBUNTZ_SPACE_STRING,"=")
- CBBUNTZ_TOKEN_COMBINE3(CBBUNTZ_SPACE_STRING,CBBUNTZ_FORMAT_STRING_FOR_INTEGER,CBBUNTZ_NEWLINE_STRING)
- CBBUNTZ_COMMA CBBUNTZ_ARRAY CBBUNTZ_TOKEN_COMBINE3([,CBBUNTZ_LOWERCASE_LETTER_I,]))
- CBBUNTZ_TOKEN_COMBINE3(CBBUNTZ_TOKEN_COMBINE3(CBBUNTZ_TOKEN_COMBINE3(
- CBBUNTZ_TOKEN_COMBINE(CBBUNTZ_SEMICOLON,CBBUNTZ_CLOSE_CURLY_BRACE),
- CBBUNTZ_CONSTANT_AKA_IMMUTABLE_VARIABLE_DESIGNATOR_KEYWORD,
- CBBUNTZ_CHARACTER)CBBUNTZ_LOWERCASE_LETTER_S,[,])
- CBBUNTZ_EQUALS_ASSIGNMENT_OPERATOR,CBBUNTZ_HELLO_STRING,
- CBBUNTZ_COMMA_STRING)CBBUNTZ_SPACE_STRING CBBUNTZ_WORLD_STRING
- CBBUNTZ_EXCLAMATION_MARK_STRING CBBUNTZ_EXCLAMATION_MARK_STRING
- CBBUNTZ_TOKEN_COMBINE(CBBUNTZ_EXCLAMATION_MARK_STRING,CBBUNTZ_SEMICOLON)
- CBBUNTZ_CONSTANT_AKA_IMMUTABLE_VARIABLE_DESIGNATOR_KEYWORD CBBUNTZ_CHARACTER
- CBBUNTZ_ASTERISK CBBUNTZ_LOWERCASE_LETTER_C CBBUNTZ_SEMICOLON
- CBBUNTZ_INITIALIZE_FOR_LOOP(CBBUNTZ_TOKEN_COMBINE(CBBUNTZ_LOWERCASE_LETTER_C,
- CBBUNTZ_EQUALS_ASSIGNMENT_OPERATOR)
- CBBUNTZ_TOKEN_COMBINE3(CBBUNTZ_LOWERCASE_LETTER_S,CBBUNTZ_SEMICOLON,CBBUNTZ_LOWERCASE_LETTER_C)
- CBBUNTZ_LESS_THAN_COMPARISON_OPERATOR
- (CBBUNTZ_LOWERCASE_LETTER_S CBBUNTZ_ADDITION_OPERATOR
- CBBUNTZ_FUNCTION_THAT_CALCULATES_LENGTH_OF_CHARACTER_ARRAY
- (CBBUNTZ_LOWERCASE_LETTER_S))CBBUNTZ_SEMICOLON
- CBBUNTZ_TOKEN_COMBINE(CBBUNTZ_LOWERCASE_LETTER_C,CBBUNTZ_INCREMENT_OPERATOR))
- CBBUNTZ_TOKEN_COMBINE(CBBUNTZ_OPEN_CURLY_BRACE,
- CBBUNTZ_FUNCTION_THAT_FORMATS_A_STRING_AND_THEN_PRINTS_THE_RESULT_TO_THE_TERMINAL_AFTERWORDS)
- CBBUNTZ_TOKEN_COMBINE((
- CBBUNTZ_FORMAT_STRING_FOR_CHARACTER CBBUNTZ_COMMA CBBUNTZ_ASTERISK CBBUNTZ_LOWERCASE_LETTER_C),
- CBBUNTZ_TOKEN_COMBINE3)(CBBUNTZ_SEMICOLON,CBBUNTZ_CLOSE_CURLY_BRACE,CBBUNTZ_PUTCHARACTER)
- CBBUNTZ_TOKEN_COMBINE((CBBUNTZ_NEWLINE_CHARACTER),CBBUNTZ_SEMICOLON)
- CBBUNTZ_RETURN,CBBUNTZ_0)
- CBBUNTZ_TOKEN_COMBINE(
- CBBUNTZ_SEMICOLON,
- CBBUNTZ_CLOSE_CURLY_BRACE)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement