Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
 
Рейтинг 4.93/41: Рейтинг темы: голосов - 41, средняя оценка - 4.93
nexen
187 / 180 / 25
Регистрация: 27.01.2012
Сообщений: 1,335
1

uint32, size_t и подобные им

01.09.2013, 10:53. Просмотров 7840. Ответов 41
Метки нет (Все метки)

Собственно, в чем смысл данных типов, в отличие от обычных unsigned int, int и подобных им?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
01.09.2013, 10:53
Ответы с готовыми решениями:

Беззнаковый тип size_t: чем различие между size_t, uintptr_t, ptrdiff_t и intptr_t?
В чем вообще его смысл? Разве запись double a = {1,2,3}; int i = 1;...

uint32 и UINT64
Господа, не подскажете ли, какие магические слова надо написать, чтобы начать...

size_t в операторе for
Здравствуйте. Возникла проблема с типом size_t. Данный цикл почему то...

size_t и npos
Здраствуйте! Тут в одной теме нашёл код #include<string> #include<iostream>...

Malloc для size_t
структура вида struct BufferParam { double* pBuffer; ...

41
castaway
Эксперт С++
4930 / 3037 / 453
Регистрация: 10.11.2010
Сообщений: 11,116
Записей в блоге: 10
Завершенные тесты: 1
01.09.2013, 14:16 21
Цитата Сообщение от ValeryS Посмотреть сообщение
x86 принято так называть 32 битные процессоры
в них не входит 8086, 8088, 80186, 80286 они не 32 битные
x64 соответственно 64битные
Довольно распространенное заблуждение. Все перечисленные Вами архитектуры относятся к x86.
x64 - придумано не знающими для не знающих.
1
nexen
187 / 180 / 25
Регистрация: 27.01.2012
Сообщений: 1,335
01.09.2013, 14:23  [ТС] 22
castaway, везде читал именно это (x86 = x32 = 32-битые, ну и x64 = 64-битные)
0
castaway
Эксперт С++
4930 / 3037 / 453
Регистрация: 10.11.2010
Сообщений: 11,116
Записей в блоге: 10
Завершенные тесты: 1
01.09.2013, 14:25 23
nexen, везде - это где? Хотя бы один пример.
0
Jupiter
01.09.2013, 14:26
  #24

Не по теме:

Цитата Сообщение от castaway Посмотреть сообщение
x64 - придумано не знающими для не знающих.
не, типичный маркетинг, так что называть первых не знающими...

0
castaway
01.09.2013, 14:30
  #25

Не по теме:

Цитата Сообщение от Jupiter Посмотреть сообщение
не, типичный маркетинг, так что называть первых не знающими...
Ну ты говоришь абстракциями, какой такой маркетинг если есть конкретные термины!?

0
ValeryS
Модератор
7265 / 5519 / 692
Регистрация: 14.02.2011
Сообщений: 18,698
01.09.2013, 14:36 26
Цитата Сообщение от castaway Посмотреть сообщение
Довольно распространенное заблуждение. Все перечисленные Вами архитектуры относятся к x86.
я где то утверждал обратное?
я говорил "Так принято" а не "так необходимо"
Цитата Сообщение от castaway Посмотреть сообщение
везде - это где? Хотя бы один пример.
элементарно
скачиваешь драйвера, а там две папки "х86"для 32-битных систем и "х64" для 64-битных
заметь дров для 16-битных процессоров(систем) нет, хотя они и называются 86-совместимые
0
Убежденный
Ушел с форума
Эксперт С++
15998 / 7269 / 1180
Регистрация: 02.05.2013
Сообщений: 11,637
Записей в блоге: 1
Завершенные тесты: 1
01.09.2013, 14:36 27
castaway,
при сборке программы под <...> размер size_t будет не 4, а 8 байт.
Какое слово лучше всего вставить вместо <...> ?
x64, AMD64, EM64T - не пойдет, так как эти термины обозначают процессорную архитектуру, а в ней нет size_t.
Win64 - тоже не пойдет, это MS-специфик, да еще может ввести в заблуждение из-за WOW64.
64-bit - снова не годится, т.к. архитектуры могут быть разные.
Терминология запутанная. Я использую x64 как наиболее обобщенное и понятное.
0
Jupiter
01.09.2013, 14:38
  #28

Не по теме:

Цитата Сообщение от castaway Посмотреть сообщение
Ну ты говоришь абстракциями, какой такой маркетинг если есть конкретные термины!?
castaway, обычный от M$, Win x64 продать легче чем Win x86-64:D

0
Croessmah
01.09.2013, 14:40
  #29

Не по теме:

Цитата Сообщение от Jupiter Посмотреть сообщение
castaway, обычный от M$, Win x64 продать легче чем Win x86-64
А еще круче будет продавать Win amd64:D

0
castaway
Эксперт С++
4930 / 3037 / 453
Регистрация: 10.11.2010
Сообщений: 11,116
Записей в блоге: 10
Завершенные тесты: 1
01.09.2013, 14:47 30
Цитата Сообщение от ValeryS Посмотреть сообщение
я где то утверждал обратное?
В 20-м посте. uint32, size_t и подобные им

Убежденный, Windows 64

Не по теме:

Jupiter, ну мы же здесь обсуждаем не маркетинг, а программирование, и в данном случае реальные названия архитектур x86 и их сокращения.

0
Убежденный
Ушел с форума
Эксперт С++
15998 / 7269 / 1180
Регистрация: 02.05.2013
Сообщений: 11,637
Записей в блоге: 1
Завершенные тесты: 1
01.09.2013, 14:50 31
Цитата Сообщение от castaway Посмотреть сообщение
Убежденный, Windows 64
Это не очень удачно из-за WOW64.
Так можно ввести в заблуждение, что у 32-битной программы, запущенной на
64-битной Windows, размер size_t будет 8 байт, а не 4.
0
ValeryS
Модератор
7265 / 5519 / 692
Регистрация: 14.02.2011
Сообщений: 18,698
01.09.2013, 14:57 32
Цитата Сообщение от castaway Посмотреть сообщение
В 20-м посте.
ну и
Цитата Сообщение от ValeryS Посмотреть сообщение
x86 принято так называть 32 битные процессоры
я написал "так называются"?
каюсь забыл слово "системы"
вот тебе еще пример
http://www.microsoft.com/ru-ru/download/details.aspx?id=16614
Microsoft .NET Framework 2.0 с пакетом обновления 1 (x86)
можно ли поставить это на 8086?

http://www.microsoft.com/ru-ru/download/details.aspx?id=6041
Microsoft .NET Framework 2.0 с пакетом обновления 1 (x64)
это к тому что никто не использует
0
castaway
Эксперт С++
4930 / 3037 / 453
Регистрация: 10.11.2010
Сообщений: 11,116
Записей в блоге: 10
Завершенные тесты: 1
01.09.2013, 15:04 33
Цитата Сообщение от Убежденный Посмотреть сообщение
Это не очень удачно из-за WOW64.
Так можно ввести в заблуждение, что у 32-битной программы, запущенной на
64-битной Windows, размер size_t будет 8 байт, а не 4.
Ну давай поспорим..
Сейчас у меня Windows 64, MinGW (GCC 4.7.3), следующая программа (независимо от того, собрана она с ключем -m32 или нет выдает один и тот же результат) что должна выдать? Какие предположения?
C++
1
2
3
4
5
6
7
#include <iostream>
 
int main()
{
    std::cout << sizeof( size_t ) << std::endl;
    return 0;
}
Да и вообще я не понимаю, как от ОС может зависеть размер size_t ?

Добавлено через 6 минут

Не по теме:

ValeryS, ок. Будем считать что это коммерческие термины. Но для меня важно что это значит на самом деле, и как эти термины трактуют.

0
Croessmah
++Ͻ
14625 / 8376 / 1580
Регистрация: 27.09.2012
Сообщений: 20,577
Записей в блоге: 2
Завершенные тесты: 1
01.09.2013, 15:05 34
Цитата Сообщение от castaway Посмотреть сообщение
независимо от того, собрана она с ключем -m32 или нет выдает один и тот же результат
uint32, size_t и подобные им
0
Croessmah
++Ͻ
14625 / 8376 / 1580
Регистрация: 27.09.2012
Сообщений: 20,577
Записей в блоге: 2
Завершенные тесты: 1
01.09.2013, 15:06 35
Цитата Сообщение от castaway Посмотреть сообщение
как от ОС может зависеть размер size_t ?
Зависит всё таки под какую разрядность будет скомпилирован код, а не от того где он будет запускаться
0
castaway
01.09.2013, 15:06
  #36

Не по теме:

Croessmah, я что-то говорил о ключе -m64 ?

0
Убежденный
Ушел с форума
Эксперт С++
15998 / 7269 / 1180
Регистрация: 02.05.2013
Сообщений: 11,637
Записей в блоге: 1
Завершенные тесты: 1
01.09.2013, 15:08 37
Цитата Сообщение от Croessmah Посмотреть сообщение
Зависит всё таки под какую разрядность будет скомпилирован код, а не от того где он будет запускаться
Да, пока не разгорелась форумная битва, хотел бы уточнить, что именно это я и имел в виду.
0
castaway
Эксперт С++
4930 / 3037 / 453
Регистрация: 10.11.2010
Сообщений: 11,116
Записей в блоге: 10
Завершенные тесты: 1
01.09.2013, 15:09 38
Цитата Сообщение от Croessmah Посмотреть сообщение
Зависит всё таки под какую разрядность будет скомпилирован код, а не от того где он будет запускаться
Я об этом и говорю. При чем тут ОС ?

Добавлено через 1 минуту
Цитата Сообщение от Убежденный Посмотреть сообщение
Так можно ввести в заблуждение, что у 32-битной программы, запущенной на
64-битной Windows, размер size_t будет 8 байт, а не 4.
Цитата Сообщение от Убежденный Посмотреть сообщение
именно это я и имел в виду.
Как раз именно такое "именее в виду" может ввести в заблуждение...
0
Croessmah
++Ͻ
14625 / 8376 / 1580
Регистрация: 27.09.2012
Сообщений: 20,577
Записей в блоге: 2
Завершенные тесты: 1
01.09.2013, 15:10 39
Цитата Сообщение от castaway Посмотреть сообщение
При чем тут ОС ?
Может я просто не правильно Вас понял, но, как мне показалось, этим
Цитата Сообщение от castaway Посмотреть сообщение
Ну давай поспорим..
опровергаете это:
Цитата Сообщение от castaway Посмотреть сообщение
Так можно ввести в заблуждение, что у 32-битной программы, запущенной на
64-битной Windows, размер size_t будет 8 байт, а не 4.
Цитата Сообщение от Убежденный Посмотреть сообщение
Да, пока не разгорелась форумная битва, хотел бы уточнить, что именно это я и имел в виду.
Я так понял, что мы просто с castaway по разному поняли Ваш пост. Ну так всегда бывает
1
Убежденный
Ушел с форума
Эксперт С++
15998 / 7269 / 1180
Регистрация: 02.05.2013
Сообщений: 11,637
Записей в блоге: 1
Завершенные тесты: 1
01.09.2013, 15:13 40
Цитата Сообщение от Croessmah Посмотреть сообщение
Я так понял, что мы просто с castaway по разному поняли Ваш пост
В точку. Но и мне впредь нужно быть точнее в формулировках.
1
01.09.2013, 15:13
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
01.09.2013, 15:13

Что такое Size_t
size_t чет про него так мало инфы и так мутно написанно в инете я так...

Пользовательский operator new(size_t)
Всем привет! Подскажите пожалуйста, как так получается, что при перегрузке...

А где size_t декларирован?
А где size_t декларирован?


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

Или воспользуйтесь поиском по форуму:
40
Ответ Создать тему
Опции темы

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