Как интерпретировать специальные символы в аргументе командной строки в C?
Первая проблема:
Предположим, мы пишем простую программу, которая принимает аргументы командной строки и печатает в файл. Если пользователь вводит
writetofile Привет! 0 w% orl \ t! @ # y
Баш отвечает с
! 0: событие не найдено.
Без знания пользователем таких вещей, как использование кавычек ('') или экранирующие символы ('\'Как мне справиться с этим, а не с bash, понимая его как команду?
Вторая проблема:
Как только я получу эти аргументы, как мне интерпретировать их как специальные символы, а не последовательности символов. (т. е. \ t это вкладка, а не '\' 't')
То есть как убедиться, что программа записывает это в файл:
Hello!0
w%orl !@#y
и не
Hello!0\n w%orl\t!@#y