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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 25.08.2011, 20:27   #1
Corvette
Пользователь
 
Регистрация: 31.07.2011
Сообщений: 55
По умолчанию Функция memcpy и массивы.

Здравствуйте!!!

Подскажите пожалуйста, как реализовать следующею задачу! Нужно две матрицы А и В объединить в одну матрицу С. Ниже приведенная программа с функции memcpy считывает строки из матриц А и В по два раза и заполняет матрицу С.
Как реализовать считывание столбцов матрицы А и В?
Буду благодарен за помощь!

Код:
#include <iostream>
#include <conio.h>

using namespace std;

int main ()
{
    char A[2][2] = {{'+','+'},{'+','+'}};
    char B[2][2] = {{'-','-'},{'-','-'}};
    char C[4][4] ={{0}};
    
    cout << "A" << endl;
    for (int i=0; i<2; i++){
        for (int j=0; j<2; j++){
            cout << A[i][j]<<" ";
            }
            cout << endl;
            }
    cout << endl << endl;
            
    cout << "B" << endl;
    for (int i=0; i<2; i++){
        for (int j=0; j<2; j++){
            cout << B[i][j]<<" ";
            }
            cout << endl;
            }
    cout << endl;        
    int x,y;
    for (int x=0, y=0; x<4; x++, y=x%2){
        memcpy (C[x], B[y], sizeof (B[y]));
        memcpy (&C[x][2], A[y], sizeof (A[y]));
        }
        
        cout << "C: " << endl;
        for (int i=0; i<4; i++){
        for (int j=0; j<4; j++){
            cout << C[i][j]<<" ";
            }
            cout << endl;
            }

getch ();
return 0;
}
Corvette вне форума Ответить с цитированием
Старый 25.08.2011, 23:13   #2
onewho
Форумчанин
 
Регистрация: 29.09.2010
Сообщений: 636
По умолчанию

массивы в языке С и производных хранятся в памяти построчно поэтому с помощью memcpy никак.
onewho вне форума Ответить с цитированием
Старый 26.08.2011, 21:16   #3
Corvette
Пользователь
 
Регистрация: 31.07.2011
Сообщений: 55
По умолчанию

Спасибо!!!
Corvette вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Заполнение массива из структуры через memcpy Master_Devel Visual C++ 0 14.06.2011 17:56
memcpy копирует не все Sam Gold Общие вопросы C/C++ 1 28.04.2010 10:40
Даны одномерные массивы А и В. Сформировать массивы, состоящие из элемент LyaLya Помощь студентам 15 20.12.2009 14:12
memcpy: Копируем double по половинкам Роман Радер Общие вопросы C/C++ 2 11.11.2009 00:08
одна функция потока, а другая функция - член класса запускающего этот поток Дмитрий_Ч Общие вопросы C/C++ 2 27.09.2007 08:50