Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: Вопрос про вывод числа в файл  (Прочитано 11003 раз)
0 Пользователей и 1 Гость смотрят эту тему.
FallenSoul
Опытный

ru
Offline Offline
Пол: Мужской

« : 25-11-2008 15:30 » 

Добрый день.
Собственно вопрос в том, что код не выводит число в файл, хотя строка там есть  Не понял Как результат,- мусор
Компилирую через gcc

Код:
#include <string.h>
#include <fcntl.h>
#include <stdio.h>
void*func_G(void*)
{
  float f = 3.24;
  char msg1[]="Результат= ";
  g_fd = open("1.dat", O_WRONLY|O_TRUNC|O_CREAT,0777);
  write(g_fd, msg1, strlen(msg1)); write(g_fd, &f, sizeof(float));
  close(g_fd);
  return NULL;
}
p.s. Из ВМ Ubuntu почему-то напрямую не копируется код через буфер, поэтому набивал в окне сообщения. Могут быть очепятки

« Последнее редактирование: 25-11-2008 15:38 от FallenSoul » Записан
Serg79
Команда клуба

ru
Offline Offline
Пол: Мужской

WWW
« Ответ #1 : 25-11-2008 15:40 » 

FallenSoul, Ты как число хочешь в файл записать, в двоичном формате или в ASCII?
Записан
Serg79
Команда клуба

ru
Offline Offline
Пол: Мужской

WWW
« Ответ #2 : 25-11-2008 15:41 » 

Не проще использовать конструкцию:
Код:
fprintf(fp,"%s %f\n",msg1,f);
Записан
FallenSoul
Опытный

ru
Offline Offline
Пол: Мужской

« Ответ #3 : 25-11-2008 15:46 » 

в ASCII
Записан
Serg79
Команда клуба

ru
Offline Offline
Пол: Мужской

WWW
« Ответ #4 : 25-11-2008 15:48 » 

Ну так и юзай такую конструкцию:
Код:
float f = 3.24;
char msg1[]="Результат= ";
FILE *fp;

fp = fopen("file.name","w");
fprintf(fp,"%s %f\n",msg1,f);
fclose(fp);
Записан
FallenSoul
Опытный

ru
Offline Offline
Пол: Мужской

« Ответ #5 : 25-11-2008 15:53 » new

Ну так и юзай такую конструкцию:
Код:
float f = 3.24;
char msg1[]="Результат= ";
FILE *fp;

fp = fopen("file.name","w");
fprintf(fp,"%s %f\n",msg1,f);
fclose(fp);

Ок, спасибо
Записан
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines