How to turn each character of a string into its ASCII character code and join them together in C

1 Answer

0 votes
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
 
int main(void) {
    char s[] = "c programming";
     
    char *ascii = (char*) malloc((strlen(s) * 3 + 1) * sizeof(char));
         
    int i = 0, j = 0;
	while (s[i]) {
        int asciicode = s[i] - 0;
        printf("%i ", asciicode);
        itoa(asciicode, ascii + j, 10);
		if (asciicode < 100) 
            j += 2;
        else
            j += 3;
		i++;
    }
     
    printf("\n");
    puts(ascii);
     
    free(ascii);
     
    return 0;
}
 
  
  
/*
run:
  
99 32 112 114 111 103 114 97 109 109 105 110 103
993211211411110311497109109105110103
  
*/

 



answered Apr 1, 2021 by avibootz
edited Apr 2, 2021 by avibootz
...