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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
S.L.I.M.
15 / 12 / 2
Регистрация: 03.02.2011
Сообщений: 96
#1

ошибка в структуре - C++

26.10.2011, 20:32. Просмотров 328. Ответов 2
Метки нет (Все метки)

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
struct S{
    char F[20];
    double n;
};
 
Student *get_mem();
 
int _tmain(int argc, _TCHAR* argv[])
{
struct S *st = get_mem();
st[0].F = "Ivanov"; // тут ошибка
st[0].n = 5.5;
 
return 0;
}
 
S *get_mem()
{
    S *s;
    s = (S*) calloc(10,sizeof(S));
    if(!s)
    {
        printf("Ошибка при распределении памяти.");
        exit(1);
    }
    return s;
}
ОШИБКА: Error 1 error C2440: '=' : cannot convert from 'const char [7]' to 'char [20]'

как исправить?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.10.2011, 20:32     ошибка в структуре
Посмотрите здесь:

Ошибка в структуре - C++
не пойму в чем ошибка,пожалуйста, помогите исправить. // 897.cpp: определяет точку входа для консольного приложения. // ...

Ошибка в структуре - C++
#include <iostream> using namespace std; struct Fraction { int num; // числитель int denum; //знаминатель ...

Ошибка в структуре? - C++
Помогите решить структуру #include <stdio.h> #include <cstdlib> #include <string.h> using namespace std; struct atc { ...

Ошибка в структуре данных - C++
Добрый день! Подскажите в чем ошибки. При компиляции программы показываются такие ошибки: то есть ошибки во всех местах, где я...

Где ошибка в структуре - C++
#include<iostream> using namespace std; struct widget{ char brand; int type; union id { char id_char; long int...

Нужна помощь!Ошибка в структуре. - C++
Есть программа,работает вроде нормально, но в одной колонки (срок годности), по программе прописанно 8 знаков для набора, а в итоге, когда...

Функция-член в структуре. В чём ошибка? - C++
#pragma hdrstop #pragma argsused #include <tchar.h> #include <stdio.h> #include <iostream> struct date { int...

Объявление динамического массива в структуре, ошибка: невозможно инциализировать - C++
(см. строку 18) В ходе написания программы столкнулся с проблемой невозможности объявления динамического массива в структуре, ошибка:...

String в структуре - C++
Добрый вечер! Подскажите пожалуйста, почему компилятор видит ошибку в строке "cin >> tablica.marka;" следующего кода: #include...

Поиск по структуре - C++
Имеется функция поиска сотрудника по имени: void Searchname(video film, char *name) { int j=0; for (int i = 0; i<col;...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Сыроежка
Заблокирован
26.10.2011, 20:35     ошибка в структуре #2
Цитата Сообщение от S.L.I.M. Посмотреть сообщение
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
struct S{
    char F[20];
    double n;
};
 
Student *get_mem();
 
int _tmain(int argc, _TCHAR* argv[])
{
struct S *st = get_mem();
st[0].F = "Ivanov"; // тут ошибка
st[0].n = 5.5;
 
return 0;
}
 
S *get_mem()
{
    S *s;
    s = (S*) calloc(10,sizeof(S));
    if(!s)
    {
        printf("Ошибка при распределении памяти.");
        exit(1);
    }
    return s;
}
ОШИБКА: Error 1 error C2440: '=' : cannot convert from 'const char [7]' to 'char [20]'

как исправить?
Это потому что ни в С, ни в С++ нет встроенной операции присваивания массивов. Вы должны воспользоваться функцией strcpy,объявленной в заголовке <cstring>, для копирования одного символьного массива в другой.
alkagolik
Заблокирован
26.10.2011, 20:57     ошибка в структуре #3
Цитата Сообщение от Сыроежка Посмотреть сообщение
C++
1
st[0].F = "Ivanov";
это прокатит если не задавать константно (вводить с калвиатуры, файла, ...)
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru