Форум программистов, компьютерный форум CyberForum.ru

Квадраты - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Несколько вопросов по строкам в С http://www.cyberforum.ru/cpp-beginners/thread124023.html
Привет всем участникам форума. Изучаю С++, по пути прошел строки из С ( массивы символов ) И осталось несколько вопросов, ответов на которые в книге найти не могу. 1: char *ptr="String1"; так мы создаем указатель который указывает на строку String1. А можно ли делать вот так ? char *ptr = "String1"; ptr = "long string2"; я думал, что работать не должно, но оно работает, тоесть после...
C++ Отличие заголовочных файлов чем отличается string.h cstring string http://www.cyberforum.ru/cpp-beginners/thread124021.html
C++ разделение данных в файле
как читать из файла данные в стуктуру если формат такой: Олег Иванович...............234434 Марина Сергеевна..........544355 Вместо . пробел. тоесть выравнено все....
чтение файла C++
в книге ifstream aa; aa.open(............); нам объясняли: ifstream open(''lala.txt,ios::....); точно не помню
C++ static и глобальная видимость http://www.cyberforum.ru/cpp-beginners/thread124009.html
прочитал что если писать static int a = 5; то a будет видно ото всюду но оказалосбь это не так... void a(); int main() { static int a = 5; a(); } void a() {
C++ Отличие инкриментов указателей Чем отличатеся ++*p от (*p)++ и от *p++ вроде увеличивается значение а не адлрес указателя..... подробнее

Показать сообщение отдельно
Vorona
Peace 2 all shining faces
 Аватар для Vorona
660 / 522 / 44
Регистрация: 05.03.2010
Сообщений: 1,256
02.05.2010, 04:44     Квадраты
Вводите, к примеру: C:\bcpp\input.txt и на экран выводятся числа из файла либо ошибка открытия файла
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
#include <stdio.h>
#include <conio.h>
#include <malloc.h>
 
int main(){
    int *array, i = 0;
        char filename[100];
    FILE *in;
 
        printf("Enter path to file: ");
    scanf("%s", &filename);
    if((in = fopen(filename, "r")) == NULL){
        fprintf(stderr, "Error: File can't be read\n");
        getch();
        return 1;
    }
    
    array = (int*)malloc(1*sizeof(int));
    
    while(!feof(in)){
        fscanf(in, "%d", &array[i]);
        i++;
        array = (int*) realloc(array, (i+1)*sizeof(int));
    }
    
    for(int j = 0; j < i; j++)
        printf("%d ", array[j]);
 
    fclose(in);
    free(array);
 
    getch();
    return 0;
}
Добавлено через 18 минут
насчет кратности трем, то ничего страшного:
в программе выше у нас как бы i является счетчиком элементов массива, результат 2ух строк ниже даст нам то значение i, которое и будет означать кол-во элементов массива, кратное трем)
C
1
2
while((i % 3) != 0)
    i--;
можно, в принципе, в 25 строку вставить этот кусочек и на экран будут выведены элементы, кол-во которых кратно трем)
 
Текущее время: 09:34. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru