#!/bin/bash filename=$$ trap "rm -f $filename.c $filename " EXIT TERM KILL cat > $filename.c << EOF #line 8 #include #include int main (int argc, char** args) { union { float f; double d; unsigned char c [8]; } u; int i,j; for (i = 1; i < argc; i++) { u.f = atof (args[i]); for (j = 0; j < 4; j++) { printf ("\\\\x%02x", u.c[j]); } printf ("\n"); u.d = atof (args[i]); for (j = 0; j < 8; j++) { printf ("\\\\x%02x", u.c[j]); } printf ("\n"); } return 0; } EOF cc -Wall -pedantic $filename.c -o $filename && $filename "$@"