[tag=CC | tag=VB] [lemma=□] □
[tag=CC | tag=VB] [lemma=long] □
[tag=CC | tag=VB] [lemma=int] □
This will probably be one of the standard signed integer types ( short int , int or long int ) , but might be a nonstandard type that exists only for this purpose . In the GNU library , fpos_t is equivalent to off_t or long int , and simply represents the number of bytes from the beginning of the file . Compilers are free to use either signed or unsigned characters for variables of type char , and they are free to use either short int or long int variables when the user asks for int ( but the compiler should disclose its choice in < limits.h > ) . For example , because Larch / C++ is tailored to the specification of C++ code , it allows users to specify the use of such C++ features as virtual , const , exception handling , and exact details of the C++ types ( including distinctions between types such as int and long int , pointers and pointers to constant objects , etc. ) . It should be noted that as templates do n't access double arguments , the template parameters which specify the range must be long ints , limiting the range you can use . The ` h ' and ` l ' type modifiers are permitted to specify that the argument is of type short int * or long int * instead of int * , but no flags , field width , or precision are permitted .