forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   Xors3D (http://forum.boolean.name/forumdisplay.php?f=126)
-   -   Странное. (http://forum.boolean.name/showthread.php?t=15405)

impersonalis 07.09.2011 13:42

Ответ: Странное.
 
abs fabs в C какбе намекаэ

.Squid 07.09.2011 15:48

Ответ: Странное.
 
Топик называется "Странное". Так что все ок.

dsd 07.09.2011 21:33

Ответ: Странное.
 
Подскажите команду наподобие printf();только чтобы можно было печатать double.

.Squid 07.09.2011 21:53

Ответ: Странное.
 
Насколько я помню, %f подходит как для float, так и для double. В крайнем случае попробуй %Lf

dsd 08.09.2011 20:25

Ответ: Странное.
 
при наличии этой строки падает
double gh[512][512];
а при такой нет
double gh[256][256];
Почему О_о

UPD:
double *n[2048];
double bh[2048];
for(int i=0;i<2048;i++){n[i]=bh;}
n[2047][2047]=0.5;
printf("value %f",n[2047][2047]);
а так работает, че так?

moka 08.09.2011 21:28

Ответ: Странное.
 
Потому что максимальный размер массива 65536 (256x256), а ты пытаешься создать слишком большой? (догадка)

HolyDel 08.09.2011 21:41

Ответ: Странное.
 
double gh[512][512]; - превысил размер стека. создавай массив в куче
double *gh = new double[512*512];

.Squid 08.09.2011 22:44

Ответ: Странное.
 
Или в настройках линкера увеличить размер стека (по умолчанию в Студии он равен 1МБ)

Mr_F_ 09.09.2011 00:22

Ответ: Странное.
 
Цитата:

Или в настройках линкера увеличить размер стека (по умолчанию в Студии он равен 1МБ)
у меня рандомные стрёмнобаги начинали появляться, когда увеличивал. так что не рекомендую. никаких нет проблем создавать через new.

.Squid 09.09.2011 01:48

Ответ: Странное.
 
Цитата:

Сообщение от dsd (Сообщение 201685)
UPD:
double *n[2048];
double bh[2048];
for(int i=0;i<2048;i++){n[i]=bh;}
n[2047][2047]=0.5;
printf("value %f",n[2047][2047]);
а так работает, че так?

Тут ты вообще какую-то фигню делаешь.

dsd 09.09.2011 02:15

Ответ: Странное.
 
Эта фигня в моей книге по цпп называется массив указателей. Где менять в кодеблокс размер стека я пока не смог найти, так что это единственный работающий у меня вариант для больших массивов.

"Массивы указателей - конструкции интересные и весьма полезные" :-D
Основная фича, как говорится в моем мануале, это возможное разное кол-во элементов в каждой строке, вот.

.Squid 09.09.2011 02:37

Ответ: Странное.
 
Ну, если ты считаешь, что прав, то построчно объясни, что происходит.

dsd 09.09.2011 02:46

Ответ: Странное.
 


Или нужен именно мой пересказ?

.Squid 09.09.2011 02:53

Ответ: Странное.
 
Ну в книге то правильно, а у тебя нет.

dsd 09.09.2011 02:55

Ответ: Странное.
 
А почему работает тогда и не падает? О_о. Еще в книге написано, что имя массива это указатель на первую ячейку из него, так что вроде все окей должно быть.


Часовой пояс GMT +4, время: 06:04.

vBulletin® Version 3.6.5.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot