[] means optional; {} means 1 or more; <> means defined elsewhere commands are separated by ';' and newlines command: declare as cast into explain set or set options help, ? quit or exit english: function [( )] returning array [] of [{ const | volatile | noalias }] pointer to type: {[] [{}] []} { struct | union | enum } decllist: a comma separated list of , or as name: a C identifier gibberish: a C declaration, like 'int *x', or cast, like '(int *)x' storage-class: extern, static, auto, register C-type: int, char, float, double, or void modifier: short, long, signed, unsigned, const, volatile, or noalias Valid set options (and command line equivalents) are: options create (-c), nocreate interactive (-i), nointeractive ritchie (-r), preansi (-p), ansi (-a) or cplusplus (-+) Current set values are: nocreate nointeractive (noritchie) (nopreansi) ansi (nocplusplus) char *x int *x(char *w, int y) int *x(char *) int *x(int ) int *x(char *, int ) int *x(args) declare x as pointer to char declare x as function returning pointer to int declare x as function (args) returning pointer to int declare x as function (pointer to char) returning pointer to int declare x as function (pointer to char, int) returning pointer to int declare x as function (pointer to char, int, float) returning pointer to int declare x as function (int) returning pointer to int (char *)x (int (*)())x (int (*)())x (int (*)(args))x (int (*)(char *x, int y))x (int (*)(char *))x (int (*)(char *, int ))x (int (*)(char *, int , float ))x cast x into pointer to char cast x into pointer to function returning int cast x into pointer to function (pointer to char) returning int cast x into pointer to function (pointer to char, int) returning int cast x into pointer to function (pointer to char, int, float) returning int [] means optional; {} means 1 or more; <> means defined elsewhere commands are separated by ';' and newlines command: declare as cast into explain set or set options help, ? quit or exit english: function [( )] returning array [] of [{ const | volatile | noalias }] pointer to type: {[] [{}] []} { struct | union | enum } decllist: a comma separated list of , or as name: a C identifier gibberish: a C declaration, like 'int *x', or cast, like '(int *)x' storage-class: extern, static, auto, register C-type: int, char, float, double, or void modifier: short, long, signed, unsigned, const, volatile, or noalias Valid set options (and command line equivalents) are: options create (-c), nocreate interactive (-i), nointeractive ritchie (-r), preansi (-p), ansi (-a) or cplusplus (-+) Current set values are: nocreate nointeractive (noritchie) (nopreansi) ansi (nocplusplus) char *x Warning: Unsupported in C -- 'reference' char &x Warning: Unsupported in C -- 'pointer to member of class' int X::*foo Warning: Unsupported in C -- 'pointer to member of class' class Y *(X::*foo)(arg1, arg2) int *x(char *w, int y) int *x(char *) int *x(int ) int *x(char *, int ) int *x(args) declare x as pointer to char Warning: Unsupported in C -- 'pointer to member of class' declare foo as pointer to member of class X int Warning: Unsupported in C -- 'pointer to member of class' declare foo as pointer to member of class X function (arg1, arg2) returning pointer to class Y declare x as function returning pointer to int declare x as function (args) returning pointer to int declare x as function (pointer to char) returning pointer to int declare x as function (pointer to char, int) returning pointer to int declare x as function (pointer to char, int, float) returning pointer to int declare x as function (int) returning pointer to int (char *)x Warning: Unsupported in C -- 'pointer to member of class' (int X::*)x (int (*)())x (int (*)())x (int (*)(args))x (int (*)(char *x, int y))x (int (*)(char *))x (int (*)(char *, int ))x (int (*)(char *, int , float ))x cast x into pointer to char Warning: Unsupported in C -- 'pointer to member of class' cast x into pointer to member of class X int cast x into pointer to function returning int cast x into pointer to function (pointer to char) returning int cast x into pointer to function (pointer to char, int) returning int cast x into pointer to function (pointer to char, int, float) returning int exit 0