Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.03.26;
Скачать: CL | DM;

Вниз

Помогите понять код на С   Найти похожие ветки 

 
Andy BitOff ©   (2006-03-06 01:57) [0]

Я С вообще не знаю, но по понятным причинам, вообщем и целом прочитать код на нем могу, но опять же, не всегда ;)
Помогите с этим кусочком:

long GetBitmapDataSize(LPBITMAPINFOHEADER pdata)
{
   ULONG sizBMI;

   if (!pdata) return FALSE;

   switch (pdata->biBitCount) {
       case 24:                                      // has color table
           sizBMI = sizeof(BITMAPINFOHEADER);
           break;
       case 16:
       case 32:
  if (pdata->biCompression==3)
   sizBMI = sizeof(BITMAPINFOHEADER)+sizeof(DWORD)*3;
  else
   sizBMI = sizeof(BITMAPINFOHEADER);
           break;
       default:
           sizBMI = sizeof(BITMAPINFOHEADER)+sizeof(RGBQUAD)*(1<<pdata->biBitCount);
           break;
   }

return (sizeof(BITMAPFILEHEADER)+sizBMI+pdata->biSizeImage);
}


Не понятно, почему 16 не описано или будет выполнятся код на 32?
И default: это тоже, что у нас else в case?


 
Andy BitOff ©   (2006-03-06 02:05) [1]

И еще. Что значит:

1<<

в

*(1<<pdata->biBitCount);


 
Defunct ©   (2006-03-06 02:30) [2]

> И default: это тоже, что у нас else в case?
Да

> Не понятно, почему 16 не описано или будет выполнятся код на 32?
После ":" не стоит ";" это все равно что в Delphi
16, 32: ...

> И еще. Что значит:
> 1<<

1 shl pdata.biBitCount


 
Defunct ©   (2006-03-06 02:33) [3]

Зы, для пресечения других возможных вопросов почитайте на досуге:
http://www.opennet.ru/docs/RUS/ansi-c/


 
Andy BitOff ©   (2006-03-06 02:38) [4]

Спасибо. Вообщем я так и думал, только с 1<< не знал.
За ссылочку спасибо, но думаю, как-нибудь в другой раз =)


 
Marser ©   (2006-03-06 10:38) [5]

Мне всё-таки кажется, что книга по С/С++ обязательно должна занимать видное место в библиотеке большинства программистов...


 
DiamondShark ©   (2006-03-06 11:43) [6]

Книги по С/С++ надо сжечь на городской площади.


 
wicked ©   (2006-03-06 11:55) [7]

DiamondShark ©   (06.03.06 11:43) [6]

пришли фоннатики и всё опошлили.... до кучи, сожгите книги по ассемблерам и прочей низкоуровневой тематике.... и пересядьте через год на арифмометры и счеты....


 
Alkid ©   (2006-03-06 12:34) [8]


> Книги по С/С++ надо сжечь на городской площади.

А оказывается упёртые фанатики есть не только среди любителей
C/C++. ;)
Я знал, я знал! :)


 
Cashmare ©   (2006-03-06 13:26) [9]

И за что СИняки не любят ПАСквилянтов и наоборот? Разные религии? :)))


 
palva ©   (2006-03-06 13:59) [10]

Defunct ©   (06.03.06 02:30) [2]
После ":" не стоит ";" это все равно что в Delphi
16, 32: ...

Точки с запятой недостаточно. На самом деле case 16: является аналогом метки. То есть управление будет проваливаться вниз с одного кейса на другой, пока не встретит break;


 
Igorek ©   (2006-03-06 14:16) [11]


> Книги по С/С++ надо сжечь на городской площади.

Книги нельзя сжигать.


 
Jeer ©   (2006-03-06 14:20) [12]

palva ©   (06.03.06 13:59) [10]

> будет проваливаться вниз с одного кейса на другой


что довольно удобно, т.к. расширяет возможности case :)


 
Alkid ©   (2006-03-06 15:02) [13]


> И за что СИняки не любят ПАСквилянтов и наоборот? Разные
> религии? :)))

Наблюдал кучу холиваров на эту тему.
Как человек, любящий C/C++ _И_ Delphi (и C# :) )
Взираю на это с неподдельным недоумением :)
Пришёл к выводу, что единственная причина такой нелюбви - это
недостаток мозгов и/или жизненного опыта. Как правило холиварщики - это подростки со свойственным им максимализмом и категоричностью :)


 
Cashmare ©   (2006-03-06 15:12) [14]


> Alkid ©   (06.03.06 15:02) [13]
>
> > И за что СИняки не любят ПАСквилянтов и наоборот? Разные
>
> > религии? :)))
>
> Наблюдал кучу холиваров на эту тему.
> Как человек, любящий C/C++ _И_ Delphi (и C# :) )
> Взираю на это с неподдельным недоумением :)
> Пришёл к выводу, что единственная причина такой нелюбви
> - это
> недостаток мозгов и/или жизненного опыта. Как правило холиварщики
> - это подростки со свойственным им максимализмом и категоричностью
> :)


А я, вообще-то, женщин люблю :)))
Но программы приходится писать и на Delphi, и на С. И, по-моему, и у того, и у другого, есть свои плюсы и минусы, но области применения у них немного разные, поэтому сравнивать их нельзя. А знать оба иногда просто надо и все.


 
Alkid ©   (2006-03-06 15:17) [15]


> А я, вообще-то, женщин люблю :)))
> Но программы приходится писать и на Delphi, и на С. И, по-
> моему, и у того, и у другого, есть свои плюсы и минусы,
> но области применения у них немного разные, поэтому сравнивать
> их нельзя. А знать оба иногда просто надо и все.

Дай я тебе руку пожму! :)


 
Cashmare ©   (2006-03-06 15:22) [16]


> Alkid ©   (06.03.06 15:17) [15]
>
> > А я, вообще-то, женщин люблю :)))
> > Но программы приходится писать и на Delphi, и на С. И,
>  по-
> > моему, и у того, и у другого, есть свои плюсы и минусы,
>  
> > но области применения у них немного разные, поэтому сравнивать
>
> > их нельзя. А знать оба иногда просто надо и все.
>
> Дай я тебе руку пожму! :)


Жми :)))


 
Jeer ©   (2006-03-06 15:30) [17]

Alkid ©   (06.03.06 15:02) [13]


> причина такой нелюбви - это
> недостаток мозгов и/или жизненного опыта


Ну не будем так строги:))

У них все еще впереди или есть оправдывающие обязательства.

Я очень давно пользуюсь связкой "ansi-c" + Delphi.
Результат - правильный.


 
Alkid ©   (2006-03-06 15:35) [18]


> У них все еще впереди или есть оправдывающие обязательства.

Обязательства или обстоятельства? Если обстоятельства, то я понимаю...
недостаток и всё такое... :)
А какие обязательства могут тут быть? Или они дали клятву верности
языку программирования и обязаны устраивать джихад против неверных? :)


> Я очень давно пользуюсь связкой "ansi-c" + Delphi.
> Результат - правильный.

 Дык :)


 
Nick Denry ©   (2006-03-06 15:56) [19]

Igorek ©   (06.03.06 14:16) [11]

> Книги по С/С++ надо сжечь на городской площади.

Книги нельзя сжигать.


451 по Фарингейту?


 
Cashmare ©   (2006-03-06 16:02) [20]

> Книги по С/С++ надо сжечь на городской площади.

Книги нельзя сжигать.


Америкосовский фильм "Послезавтра". Цитата:
- Нельзя жечь книги!
- А чем же еще топить?
- Нет! Это абсолютно исключено!
- Лучше околеть?
- Пойду еще принесу...



Страницы: 1 вся ветка

Текущий архив: 2006.03.26;
Скачать: CL | DM;

Наверх




Память: 0.52 MB
Время: 0.044 c
2-1141671142
redlord
2006-03-06 21:52
2006.03.26
какой код будет меньше нагружать систему


3-1138801962
DelphiFan
2006-02-01 16:52
2006.03.26
Фильтрация в TTable по полю ftDateTime


15-1140343375
FH
2006-02-19 13:02
2006.03.26
регистрация на borland.com


11-1122709972
AdmeraL
2005-07-30 11:52
2006.03.26
COL and VCL ?


2-1142109472
ctudent
2006-03-11 23:37
2006.03.26
Как выполнить скрипт?