Created
November 26, 2010 21:12
-
-
Save macmade/717220 to your computer and use it in GitHub Desktop.
C / System informations
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#include <stdio.h> | |
#define XSTR(s) STR(s) | |
#define STR(s) #s | |
int main( void ) | |
{ | |
printf | |
( | |
"\n" | |
"System informations:\n" | |
"\n" | |
"- Architecture: " | |
#if defined ( __i386__ ) || defined( __x86_64__ ) | |
#if defined( __x86_64__ ) | |
"x86-64\n" | |
#else | |
"i386\n" | |
#endif | |
#elif defined ( __arm__ ) | |
"ARM\n" | |
#elif defined ( __ppc__ ) || defined ( __ppc64__ ) | |
#if defined( __ppc64__ ) | |
"PPC-64\n" | |
#else | |
"PPC\n" | |
#endif | |
#else | |
"N/A\n" | |
#endif | |
"- Standard-C: " | |
#ifdef __STDC__ | |
"yes\n" | |
#else | |
"no\n" | |
#endif | |
#ifdef __STDC_VERSION__ | |
"- Standard-C version: %li\n" | |
#else | |
"- Standard-C version: N/A\n" | |
#endif | |
#if defined( __STDC_HOSTED__ ) && __STDC_HOSTED__ >= 1 | |
"- Standard-C hosted: yes\n" | |
#else | |
"- Standard-C hosted: no\n" | |
#endif | |
"- Strict ANSI: " | |
#ifdef __STRICT_ANSI__ | |
"yes\n" | |
#else | |
"no\n" | |
#endif | |
"- LP64: " | |
#ifdef __LP64__ | |
"yes\n" | |
#endif | |
#if defined( __ASSEMBLER__ ) && __ASSEMBLER__ >= 1 | |
"- Assembler: yes\n" | |
#else | |
"- Assembler: no\n" | |
#endif | |
#if defined( __OBJC__ ) && __OBJC__ >= 1 | |
"- Objective-C: yes\n" | |
#else | |
"- Objective-C: no\n" | |
#endif | |
#ifdef __cplusplus | |
"- C++: yes\n" | |
#else | |
"- C++: no\n" | |
#endif | |
"- GNU-C: " | |
#ifdef __GNUC__ | |
"yes\n" | |
#else | |
"no\n" | |
#endif | |
"- GNU Fortran: " | |
#ifdef __GFORTRAN__ | |
"yes\n" | |
#else | |
"no\n" | |
#endif | |
"- ELF: " | |
#ifdef __ELF___ | |
"yes\n" | |
#else | |
"no\n" | |
#endif | |
"- SSP: " | |
#ifdef __SSP__ | |
"yes\n" | |
#else | |
"no\n" | |
#endif | |
"- Register prefix: " | |
#ifdef __REGISTER_PREFIX__ | |
"[ %1s ]\n" | |
#else | |
"N/A\n" | |
#endif | |
"- User label prefix: " | |
#ifdef __USER_LABEL_PREFIX__ | |
"[ %1s ]\n" | |
#else | |
"N/A\n" | |
#endif | |
"\n" | |
#ifdef __STDC_VERSION__ | |
, __STDC_VERSION__ | |
#endif | |
#ifdef __REGISTER_PREFIX__ | |
, XSTR( __REGISTER_PREFIX__ ) | |
#endif | |
#ifdef __USER_LABEL_PREFIX__ | |
, XSTR( __USER_LABEL_PREFIX__ ) | |
#endif | |
); | |
return 0; | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
On my MacBookPro: