author | Christian Urban <christian dot urban at kcl dot ac dot uk> |
Wed, 09 Oct 2013 15:51:03 +0100 | |
changeset 115 | c4008b31df8e |
parent 112 | 0711775cb6b0 |
permissions | -rw-r--r-- |
#include <string.h> #include <stdio.h> #include <stdlib.h> void foo (char *bar) { float my_float = 10.5; // in hex: \x41\x28\x00\x00 char buffer[28]; printf("my float value = %f\n", my_float); strcpy(buffer, bar); printf("my float value = %f\n", my_float); } int main (int argc, char **argv) { foo("my string is too long !!!!! "); // all is normal //foo("my string is too long !!!!! \x10\x10\xc0\x42"); // overwrites my_float return 0; }