aboutsummaryrefslogtreecommitdiff
path: root/tests/hello_world_loop_malloc.cpp
blob: b936183463d0bcea20b1e5a61a83068654dfb617 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include<stdio.h>
#include<string.h>
#include<stdlib.h>

extern "C" {
  void dump(char *s) {
    printf("%s\n", s);
  }
}

int main() {
  char *original = (char*)"h e l l o ,   w o r l d ! ";
  char *copy = (char*)malloc(strlen(original));
  for (int i = 0; i < strlen(original); i += 2) {
    copy[i/2] = original[i];
  }
  copy[strlen(copy)+1] = (int)&original; // force original to be on the stack
  dump(copy);
  return 1;
}