strcat(str,"aaa ");
strcat(str,""");
strcat(str,"bbb");
strcat(str,""");
Как записать в файл "
Код:
так как сейчас я выше написал понятное дело сделать нельзя потому что используется три двойных кавычки и компилятор просто не позволит так скомпилировать. А мне надо в файл записать
Код:
aaa "bbb"
и чтобы bbb были заключены в двойные кавычки. Как сделать я не знаю :) Поделитесь опытом как сделать.
Пробовал так:
Код:
int main()
{
int i = 34;
char x;
x = char(i);
FILE *f;
if ((f = fopen("1.txt", "w+")) == NULL)
{
return -1;
}
fprintf(f,"%s",x);
fclose(f);
return 0;
}
{
int i = 34;
char x;
x = char(i);
FILE *f;
if ((f = fopen("1.txt", "w+")) == NULL)
{
return -1;
}
fprintf(f,"%s",x);
fclose(f);
return 0;
}
"a\"b\"" - записано будет: a"b"
Просто в строках символ " - специальный,
такие символы нуждаются в экранировании, таким образом
символ \ - экранирует следующий за ним символ в строке.
Если написать:
\t - вставится табуляция
\n - перевод строки
\" - кавычка
\\ - \ (наклонная черта, для путей например)
Цитата: 4nob1oz
:confused: чтото я никак не догадаюсь как записать в файл "
Символы которые имеют специальное значение называются эскейп символами, и для их записи используют специальные последовательности:
\t - табуляция;
\n - новая строка;
\r - возврат каретки;
\" - дв кавычка
\' - од кавычка
.....
Касательно второго твоего примера, то ты выводишь строку (%s), а надо символ (%c). Мог не писать код символа (учитывая что он может отличаться), а написать просто char c='"'; или char c='\"';
Спасибо. Разобрался.