как прочитать числа в С?
Ты как числа в файл пишешь? Давай код.
---
"Потому что Аллах не ведёт людей неверных."
#include <stdlib.h>
int main(int argc, char *argv[])
{
FILE *file;
char *str;
str = malloc(100);
printf("Distance\n");
scanf(str);
file = fopen("out.txt", "wt");
fprintf(file,"%s",str);
fclose(file);
return 0;
}
и выдает:ННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННээээ‘ вместо любого введеного числа.
---
"Vyroba umelych lidi, slecno, je tovarni tajemstvi."
scanf("%s", str);
и не забыть
free(str);
в конце программы перед return
Еще, на всякий случай надо привыкать проверять, выделяется ли тебе память malloc и получилось ли открыть файл fopen.
Причём тут кодировки?
Спасибо! Она ЗАРАБОТАЛА!
Так это же сразу было ясно, что ни при чём.
str = malloc(100);надо писать примерно так:
char* str=NULL;
str = (char*)malloc(100);
if(str==NULL){
printf("Eггог!");
return(1);
}
потому что не надо писать на Си
> return(1);
Для таких вещей уже давно существует err(3
но особо продвинутым насильникам этого, как обычно, неизвестно.
---
"Vyroba umelych lidi, slecno, je tovarni tajemstvi."
"man" не является внутренней или внешней
командой, исполняемой программой или пакетным файлом.
Я:\моя папка>man err(3)попробу так:
"man" не является внутренней или внешней
командой, исполняемой программой или пакетным файлом.
K:\Шовинист>man err(3)
Я:\моя папка>man err(3)
"man" не является внутренней или внешней
командой, исполняемой программой или пакетным файлом.
Поставь нормальную операционку.
У меня гугль есть.
обычно он так пишет
С файлом +1, с памятью - не так важно. Куда важнее писать scanf("%99s", str хотя одно другому не мешает.
Например твоя прога конечно даже близко не "считывает с клавиатуры числа и записывает их в файл".
И уделять особое внимание тому какая память доступна, и как не вылазить за границы массива.
Такое впечатление, что код скопирован из какого-то FAQ типа "как не надо писать на C".
А текст вопроса с заголовком просто феноменален: заголовок никак не соответствует вопросу, который в свою очередь не соответствует приведенному коду.
Мысленный эксперимент: представь, что видишь на форуме автомобилистов такой диалог (который без малейшего преувеличения аналогичен этому треду):
заголовок: система счисления на циферблате спидометра автомобиля
Простейшее путешествие: выезжаю из точки A и еду в точку B. Только за окном какая-то абракадабра. Как с этим бороться?
А подробнее?
Поворачиваю руль до упора вправо и, не закрыв левую дверь, поворачиваю зажигание и нажимаю газ на первой скорости. Слева на лобовом стекле выезжает стена и застывает с сильным толчком.
А теперь скажи какого ответа по-твоему заслуживает автор вопроса из мысленного эксперимента?
убей себя!
Разумному человеку сразу ясно, что крайне маловероятно (почти немыслимо чтобы автор всерьез искал помощи специалистов. Очень похоже на психолога, пишущего диплом, но либо не щарящего в C (не видевшего автомобилей соответственно либо исследующего реакцию на заведомо неадекватный вопрос.
Прочитать printf(3) и fread(3).
А зачем тебе эти функции, чтобы "ПРОЧИТАТЬ" ввод и "ЗАПИСАТЬ" в файл?
---
...Я работаю...
P.S. Потому что fread(3) и fwrite(3) --- это одна и та же страница.
Это девушка.
---
...Я работаю антинаучным аферистом...
кохтпа умеет считать, однако...
Оставить комментарий
nomad
Простейшая прога: считывает с клавиатуры числа и записывает их в файл. Только в файле отображается какая-то абракадабра. Кто-нибудь знает как с этим бороться?