在C中将int n转换为长度为n的字符串

Convert int n into string of length n in C

见鬼,我是 C 的新手,想了解字符串和整数转换。

我正在尝试编写一个函数,它接受一个整数 n,转换为一个由长度为 n 的 n 组成的字符串。然后根据字母表的第 n 个数字将其转换回字符串。

例如,如果我输入 int 3,它将 return 一个长度为 3 的字符串,由 3 个组成,所以是“333”。然后我想将其转换为“CCC”,因为它是字母表中的第三个字母。

另一个例子是函数接受整数 5,returns "EEEEE"。字母表第5个字母的5个字母

到目前为止,这是我的代码:

int *num = 3;
char* buffer[sizeof(int) * 4 + 1];  //got this from another question
sprintf(buffer, "%d", key_num)  //turn int into char

任何帮助将不胜感激

#include <stdio.h>
#include <stdlib.h>

void number_to_alphabet_string(int n){

 char buffer[n];
 for(int i=0;i<n;i++){
   buffer[i] = n + 64;
   //check ASCII table the difference is fixed to 64
   printf("%c",buffer[i]);
   }
 printf("\n");}

 int main(void){
     int C = 3;
     number_to_alphabet_string(C);

     int J = 10;
     number_to_alphabet_string(J);
     return 0;
   }

如果您不熟悉像 C 这样的低级编程语言并且您很关心它,那么我强烈建议您阅读教科书并从头开始学习它,而不是结合代码片段。通常尽量保持简单,对于不使用复杂语法和数据结构的任务,c 为您提供了对类型的低级别控制,如果您将来可能需要进一步使用它,那么这是您需要掌握的东西。