Например:Как преобразовать строку символов ASCII в десятичные значения для символов в C?
- "16" должен распечатать десятичные значения: 49,54
- "24" должен распечатать десятичные значения: 50,52
Как достичь это?
Например:Как преобразовать строку символов ASCII в десятичные значения для символов в C?
Как достичь это?
Это действительно просто, вам не нужно конвертировать ничего, что это вопрос представительства, например,
const char *sixteen = "16";
const char *twentyfour = "24";
const char *number = "1345461";
printf("%d,%d\n", sixteen[0], sixteen[1]);
printf("%d,%d\n", twentyfour[0], twentyfour[1]);
// ^^ use the `%d' specifier to see the decimal value
// of the corresponding ascii.
for (int i = 0 ; number[i] != '\0' ; ++i)
printf("%d,", number[i]);
Спасибо. Я начинаю изучать C и не знаю этого синтаксиса. – notorious
Разве это бит, где мы указываем, что C фактически не требуется использовать ASCII? Конечно, если вы используете компьютер в подвале дедушки, вы, вероятно, обнаружили это ... – Persixty
В серьезной заметке я хотел бы указать, что это работает, потому что существует неявное продвижение 'char' в' int', когда аргументы переходят к вариационным функциям. – Persixty
Этот вопрос показывает вам, как это сделать: http://stackoverflow.com/questions/1472581/ print-chars-and-their-ascii-code-in-c – Bert
Это не тот вопрос, который я задаю. Ответ ниже ответил на мой вопрос. – notorious