Skip to content

Instantly share code, notes, and snippets.

@Silva97
Created August 6, 2018 03:37
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save Silva97/93aa97327ec05168a8b53027eca0e73a to your computer and use it in GitHub Desktop.
Save Silva97/93aa97327ec05168a8b53027eca0e73a to your computer and use it in GitHub Desktop.
/********************
* Exemplo maluco por Luiz Felipe.
*
* https://github.com/Silva97
********************/
#include <stdio.h>
#define UCHARPTR (unsigned char *)
int length(unsigned char *addr);
void print(char *text);
int main(){
char *text = "Hello World!",
*never = "I never be printed! NEVER!",
*other = "\rHi.";
int flen = length(UCHARPTR print);
print(text);
print("Hello World!" + *other);
printf("> 4 + 12 = %d\n", ((int (*)(int, int)) print+flen)(4, 12));
return 0;
}
int length(unsigned char *addr){
int i;
for(i = 0; *addr++ != 0xC3; i++);
return i+1;
}
void print(char *text){
printf("Text: %s\n", text);
}
int sum(int x, int y){
return x + y;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment