Модераторы: Daevaorn
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Numeric constant too large 
:(
    Опции темы
Alca
Дата 18.11.2010, 18:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3993
Регистрация: 14.6.2006

Репутация: 7
Всего: 50



CG 2010
Код

#include <vcl.h>
#pragma hdrstop

#include "Unit1.h"

#pragma package(smart_init)
#pragma resource "*.dfm"
//---------------------------------------------------------------------------
TForm1 *Form1;

const __int64 cllBuffSize       = 1024;
unsigned char ucBuff[cllBuffSize] = {0};    //ругается на cllBuffSize
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
    : TForm(Owner)
{
}
//---------------------------------------------------------------------------


Код

[BCC32 Error] Unit1.cpp(14): E2324 Numeric constant too large

Че за хрень?


--------------------
PM WWW ICQ Skype Jabber   Вверх
Sartorius
Дата 18.11.2010, 18:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1568
Регистрация: 18.7.2006
Где: Ivory tower

Репутация: 8
Всего: 37



Цитата(Alca @  18.11.2010,  19:52 Найти цитируемый пост)
[BCC32 Error]

+
Цитата(Alca @  18.11.2010,  19:52 Найти цитируемый пост)
__int64 


ИМХО уже подозрительно ;)
Используй 64  битный компилятор или кросскомпилятор

Это сообщение отредактировал(а) Sartorius - 18.11.2010, 18:54
PM MAIL ICQ   Вверх
Alca
Дата 18.11.2010, 19:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3993
Регистрация: 14.6.2006

Репутация: 7
Всего: 50



МС студия нормально компилит


--------------------
PM WWW ICQ Skype Jabber   Вверх
bsa
Дата 19.11.2010, 20:41 (ссылка) |    (голосов:4) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 63
Всего: 196



используй size_t вместо __int64. Этот тип имеет оптимальную разрядность для целевой системы. Больше чем в него поместится все равно выделить ты не сможешь.
PM   Вверх
sQu1rr
Дата 19.11.2010, 23:34 (ссылка)    | (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 597
Регистрация: 11.11.2008
Где: london

Репутация: 3
Всего: 13



Цитата(bsa @  19.11.2010,  20:41 Найти цитируемый пост)
используй size_t вместо __int64 Больше чем в него поместится все равно выделить ты не сможешь.

Почему же? __int64 в 32х разрядной системе = 64бит ( Windows по крайней мере точно )
В 32битном Windows ( тут уверен на 100% ) sizeof( __int64 ) - sizeof( size_t ) = 4
Вообще правильно будет ( long long )

Это сообщение отредактировал(а) sQu1rr - 19.11.2010, 23:35
PM MAIL Skype GTalk   Вверх
Леопольд
Дата 19.11.2010, 23:37 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 943
Регистрация: 17.6.2009

Репутация: 10
Всего: 13



Цитата(sQu1rr @  19.11.2010,  23:34 Найти цитируемый пост)
правильно будет
Цитата(bsa @  19.11.2010,  20:41 Найти цитируемый пост)
size_t




--------------------
вопросов больше чем ответов
PM MAIL   Вверх
sQu1rr
Дата 19.11.2010, 23:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 597
Регистрация: 11.11.2008
Где: london

Репутация: 3
Всего: 13



Цитата(Леопольд @  19.11.2010,  23:37 Найти цитируемый пост)
size_t

Вмысле не __int64 а long long
А насчет size_t так я тут согласен, я через какоето время понял о чем говорил bsa smile Вообщем как обычно
PM MAIL Skype GTalk   Вверх
Леопольд
Дата 19.11.2010, 23:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 943
Регистрация: 17.6.2009

Репутация: 10
Всего: 13



Цитата(sQu1rr @  19.11.2010,  23:34 Найти цитируемый пост)
В 32битном Windows ( тут уверен на 100% ) sizeof( __int64 ) - sizeof( size_t ) = 4
Но адресовать bолее 2 в 32-ой всё равно не выйдет...


Это сообщение отредактировал(а) Леопольд - 19.11.2010, 23:40


--------------------
вопросов больше чем ответов
PM MAIL   Вверх
sQu1rr
Дата 20.11.2010, 00:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 597
Регистрация: 11.11.2008
Где: london

Репутация: 3
Всего: 13



Цитата(Леопольд @  19.11.2010,  23:40 Найти цитируемый пост)
Но адресовать bолее 2 в 32-ой всё равно не выйдет...


Цитата(sQu1rr @  19.11.2010,  23:39 Найти цитируемый пост)
А насчет size_t так я тут согласен, я через какоето время понял о чем говорил bsa smile Вообщем как обычно 


PM MAIL Skype GTalk   Вверх
Alca
Дата 7.12.2010, 21:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3993
Регистрация: 14.6.2006

Репутация: 7
Всего: 50



Цитата

используй size_t вместо __int64. Этот тип имеет оптимальную разрядность для целевой системы. 

что значит имеет оптимальную разрядность. В дебилдере:
Код

typedef unsigned int size_t;

а как же usigned long, к примеру?  


--------------------
PM WWW ICQ Skype Jabber   Вверх
mes
Дата 7.12.2010, 23:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


любитель
****


Профиль
Группа: Участник Клуба
Сообщений: 7954
Регистрация: 14.1.2006

Репутация: 144
Всего: 250



Цитата(Леопольд @  19.11.2010,  22:40 Найти цитируемый пост)
Но адресовать bолее 2 в 32-ой всё равно не выйдет...

больше 2х байт? так это не 32х битная, а 16ти smile


Цитата(sQu1rr @  19.11.2010,  22:34 Найти цитируемый пост)
_int64 в 32х разрядной системе = 64бит ( Windows по крайней мере точно )
В 32битном Windows ( тут уверен на 100% ) sizeof( __int64 ) - sizeof( size_t ) = 4

так все таки 4 байта или 64 бита ?
 smile 



--------------------
PM MAIL WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++:Общие вопросы"
Earnest Daevaorn

Добро пожаловать!

  • Черновик стандарта C++ (за октябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика(4.4мб).
  • Черновик стандарта C (за сентябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика (3.4мб).
  • Прежде чем задать вопрос, прочтите это и/или это!
  • Здесь хранится весь мировой запас ссылок на документы, связанные с C++ :)
  • Не брезгуйте пользоваться тегами [code=cpp][/code].
  • Пожалуйста, не просите написать за вас программы в этом разделе - для этого существует "Центр Помощи".
  • C++ FAQ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0540 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.