Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 30.10.2012, 19:50   #1
cruZer02
 
Регистрация: 09.10.2012
Сообщений: 3
По умолчанию 3 програмы

Помогите написать максимально простенькие програмки по таким темам:

1. Работа со строками и структурами. Битовые структуры.

2. Объекты и классы. Простые операции с объектами. Указатель this. Дружественные функции и классы.

3. Работа с массивами объектов.

Желательно с коментариями
зарание спасибо
cruZer02 вне форума Ответить с цитированием
Старый 30.10.2012, 20:02   #2
Helloween
Форумчанин
 
Регистрация: 24.04.2012
Сообщений: 300
По умолчанию

Могу сделать но не бесплатно.
Помог? Оставляем отзыв =)
Helloween вне форума Ответить с цитированием
Старый 01.11.2012, 06:09   #3
Nuklon
Форумчанин
 
Аватар для Nuklon
 
Регистрация: 05.04.2012
Сообщений: 134
По умолчанию

Цитата:
Сообщение от cruZer02 Посмотреть сообщение
1. Работа со строками и структурами. Битовые структуры.
Код:
#include <stdio.h>

// выровним структуру на один байт
#pragma pack(push, 1)
typedef struct {
   char a:4; // младшая тетрада
   char b:4; // старшая тетрада
} sbit;
#pragma pack(pop)


int main(void){
   char  c = 'A';
   sbit* p = (sbit*)&c;
   printf("%d %d\n%c\n", p->b, p->a, (p->b << 4) | p->a);
   return 0;
}
Nuklon вне форума Ответить с цитированием
Старый 01.11.2012, 11:04   #4
Axrik
Форумчанин
 
Аватар для Axrik
 
Регистрация: 17.12.2011
Сообщений: 111
По умолчанию

Цитата:
Сообщение от cruZer02 Посмотреть сообщение
2. Объекты и классы. Простые операции с объектами.
Код:
#include "iostream" // библиотеки
#include "stdafx.h"  

class worker    //класс рабочий
 { 
    char name [64] ; // private-переменные  
    long worker_id; // (доступны всем public-членам данного класса)
    float salary;      // Имя, номер рабочего, зарплата.
 public: 
    worker(char *, long, float);  // конструктор класса 
    ~worker();                       // деструктор класса
    void show_worker(void);     // вывод данных объекта класса (объект 
    int change_salary(float) ;   // класса — переменная типа этого класса)
    long get_id(void);             //прототипы функций 
 }; 

 worker :: worker(char *name, long worker_id,  float salary) //описание к-ра
 { 
    strcpy(worker :: name, name) ; 
    worker :: worker_id = worker_id; 
    if (salary < 50000.0) 
       worker :: salary = salary; 
    else worker :: salary = 0.0; 
 } 

worker :: ~worker()
{cout << "Работает деструктор"; free (name); } //Описание деструктора

 void worker::show_worker(void)  // ф-ия вывода на экран объекта класса
 { 
    cout << "Рабочий:  " << name << endl; 
    cout << "Номер рабочего: "  << worker_id << endl; 
    cout << "Оклад:  " << salary << endl; 
 } 

 void main(void)   
 { 
    worker man("Ivan", 110, 10101.0); //объявление объекта класса worker и вызов констурктора
    man.show_worker();  //вывод сод. объекта на экран
 }
Цитата:
Сообщение от cruZer02 Посмотреть сообщение
2. Указатель this.
Код:
// подключаем те же самые библиотеки

class B // объявление первого класса
{
public:
    int k;
    B(){k = 0;}  // контсруктор по умолчанию
};

class SomeClass  // объявление второго класса
{
public:
    B *b;  // обявление пер-мой типа B (объект первого класса)
    SomeClass(){b = new B;}       // выделение памяти
    SomeClass(const SomeClass &w) // если вы знакомы с доступом по указателю и прочими операциями с указателями в 
   {                                            // структурах, то попробуйте разобраться сами ибо мои объяснения вас только запутают
        this->b = new B;
        this->b->k = w.b->k;
    }   
};

void main()
{
    SomeClass q;
    SomeClass q1 = q; // Вызов конструтора копирования.
    q1.b->k = 3;        // работа с указателем
    cout << q.b->k;
}
Цитата:
Сообщение от cruZer02 Посмотреть сообщение
2. Дружественные функции и классы.
Код:
class A
{
 int a;
 friend int func(A&, A&);
public:
 ...
}

int func (A m, A n)
{ 
  int sum;
  sum = m.a + n.a;
  return sum;
}

void main()
{
 int sum; 
 A m,n;
 // вызываем конструктор, который должен быть у нас описан в public-членах класса
 sum = func(m,n);
 cout << sum;
 ...
}

Последний раз редактировалось Axrik; 01.11.2012 в 11:33.
Axrik вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
3 програмы на C++ в Qtcreator Renford Помощь студентам 2 15.10.2012 14:03
Обучающие програмы Kolya29 Общие вопросы Delphi 1 28.11.2010 22:17
Две програмы Арсен1 Паскаль, Turbo Pascal, PascalABC.NET 5 02.07.2010 12:25
Загрузка програмы Denmart Помощь студентам 3 22.08.2009 15:50
Локализация програмы neo_m Помощь студентам 4 10.03.2008 15:24