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

Как возвращать массив структур? - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Нужно вставить в прогу правильную формулу(С++) http://www.cyberforum.ru/cpp-beginners/thread42157.html
Привет всем)) Помогите пожалуйста вставить в прогу правильную формулу. Вот сама задача: Должны быть реализованные подпрограммы рисования дуги круга заданной: координатами центра, координатами стартовой точки и величиной угла вот сам код проги: #include <graphics.h> #include <stdio.h> #include <math.h> #include <conio.h>
C++ Выполнить строку Здравствуйте, подскажите наиболее простой вариант решения проблемы. Есть строка типа... http://www.cyberforum.ru/cpp-beginners/thread42113.html
Литература с C# на C++ C++
Заранее прошу прощения, если не туда написала, но очень нужна ваша помощь. Может кто-нибудь посоветует какую-нибудь литературу для изучения C++, при раннем изучении C#. C# изучала преимущественно Windows Application, и теперь нужно сориентироваться в C++ в этом же направлении. Говорят, что отличия небольшие, но может есть книжечки, где все рассказано???
C++ Найти номера всех элементов с максимальным значением
сделайте кто может,начинаю ток по с++ 7. Найти номера всех элементов с максимальным значением. Добавлено через 2 минуты 59 секунд 7. В прямоугольной матрице, размерностью n*m,найти номера первых отрицательных элементов каждой строки (столбца).
C++ функции,указатели и ссылки. http://www.cyberforum.ru/cpp-beginners/thread42046.html
Всем привет! Задали простецкую задачу. решите пожалуйста Написать программу в которой есть три функции, которые должны вычислять некоторые значения: 1)z=x*x*x+3*x*x*y+6*x*y+3*x*y*y+y*y*y; параметры передаются по значению 2)z=-y(если x<0) z=y(если x>0) - в математике выглядит как система из двух уравнений; параметры передаются по указателям (if) 3)z=(x+y)^n - параметры передаются по ссылкам...
C++ Ввод с лимитом) У меня вот такая проблема) Нужно ввести число и добыть из него корень. При этом если пользователь ввел меньше или равное число 99999 то выполнять действия если во время ввода пользователь вводить большее число то вводить лишь до 5-ти цифровое число включительно. То есть когда вводить, например, char a; cout<<"Enter number:"; cin>>a; и пользователь пытается ввести число 123456789, то при вводе... подробнее

Показать сообщение отдельно
Vourhey
Почетный модератор
6470 / 2245 / 123
Регистрация: 29.07.2006
Сообщений: 12,635
28.06.2009, 12:58     Как возвращать массив структур?
Блин, ну ты крендель. Ты поместил объявление указателя в условие Зашибись.

Добавлено через 42 секунды
C++
1
2
3
4
5
if (menu==1) 
        {
struct trgstr* base=file_read();
 
        }
Вынеси struct trgstr* base за условие, чтобы base была видна компилятору по всей функции main.

Добавлено через 3 минуты 57 секунд
Вот тебе твой код без чтения из файла (так как, файл мне делать лень). Все прекрасно работает:
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
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
#include <iostream>
#include <stdlib.h>
#include <fstream>
 
using namespace std;
 
struct trgstr
{
char name[12];
int x;
int y;
int z;
};
 
 
struct trgstr* file_read();
 
int main()
{
int i,n=2,menu=1;     /*отладка*/
struct trgstr var;
struct trgstr* base;
 
cout<<".::MENU::."<<endl;
cout<<"1 - from file"<<endl;
cout<<"2 - from keyboard"<<endl;
cout<<"select: ";
//cin>>menu;
if (menu==1)
    {
        base=file_read();
    }
 
for (i=0; i<n; i++)
    {
    cout<<base[i].name<<endl;
    cout<<base[i].x<<endl;
    cout<<base[i].y<<endl;
    cout<<base[i].z<<endl;
    }
 
return 0;
}
 
trgstr* file_read()   //Чтение из файла
 
{
char line[12];
struct trgstr* base=new trgstr[255];
base[0].x = 666;
 
return base;
}
Вывод:
[Vourhey@Vourhey C]$ ./a.out
.::MENU::.
1 - from file
2 - from keyboard
select:
666
0
0

0
0
0
Может, тебе почитать какую-нибудь книжку еще разок? Ну или посидеть подольше над кодом, подумать самому? А то у тебя один и тот же вопрос никак решиться не может...
 
Текущее время: 05:21. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru