TEST#1 [REUSSI]

Commentaire de Dieu :

#include <stdlib.h>
#include <string.h>

char *my_first_interpreter (const char *code)
{
  static char* str = NULL;
  size_t length = strlen(code);
  
  str = (char*)calloc(0, length);
  
  size_t count = 0;
  size_t pointer = 0;
  
  for(size_t i = 0; i < length; i++) {
    if(code[i] == 43) {
      count++;
    }
    if(code[i] == 46) {
      char letter = count;
      str[pointer] = letter;
      pointer++;
    }
  }
  str[pointer] = '\\0';
	return str;
}

TEST#2

Conseil, utiliser un while quand on ne connaît pas la longueur d’un string, car c’est plus pour la compréhension que pour de la performance.

#include <string.h>
#include <stdlib.h>

char *my_first_interpreter (const char *code)
{
  static char* str = NULL;
  str = (char*)calloc(0,sizeof(code));
  size_t count = 0;
  size_t cursor = 0;
  size_t i = 0;
  
  while(code[i]!='\\0') {
    if(code[i] == 43) {
      count++;
    }
    if(code[i] == 46) {
      char letter = count;
      str[cursor] = letter;
      cursor++;
    }
    ++i;
  }
  str[cursor] = '\\0';
	return str;
}

TEST#3

Solution préférée mais le mieux serait de mettre le tableau en static