Вам не нужно ничего преобразовывать, потому что символы в s2
уже являются значениями ASCII.
Вы, вероятно, хотите что-то вроде этого:
char s2[1024];
fgets(s2, 1024, stdin);
int arr[1024];
int i = 0;
while (i < strlen(s2))
{
arr[i] = s2[i];
i++;
}
Если ваш ввод скажет:
ABCD
arr
будет содержать следующие значения: {65, 66, 67, 68, x, x, x}
, где x
обозначает «неопределенное значение».
Лучшая версия цикла:
for (int i = 0; i < strlen(s2); i++)
{
arr[i] = s2[i];
}
В целом, лучшая версия:
#define MAXLINE 1024
char line[MAXLINE];
fgets(line, sizeof line, stdin);
int arr[MAXLINE];
for (int i = 0; i < strlen(s2); i++)
{
arr[i] = s2[i];
}