Обсуждение:Сильная и слабая типизация

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску

> Единственный практически используемый язык программирования со строгой статической типизацией — это Ада.

Некорректная информация. Haskell, OCaml - практически используемые языки со строгой статической типизацией. 95.67.193.14 13:05, 31 июля 2011 (UTC)ololo[ответить]

> Довольно большое число распространённых языков программирования используют нестрогую статическую типизацию. К таким языкам относятся, например Pascal, Модула-2, Fortran.

Почему это противоречит этой статье: Паскаль

>Типизация данных: статическая, Сильная типизация, безопасная (англ. Type safety)

178.150.124.26 20:47, 12 июля 2013 (UTC)[ответить]

С уважением, Олег.

Общепринято считать, что Паскаль является языком с сильной типизацией. Можно, например, посмотреть аналогичную статью про Паскаль на англоязычной вики.

С уважением, Григорий.

Дана не совсем корректная информация по типизации в Си.

[править код]

В статье есть вот такая вот фраза:

> неявного приведения практически любых типов друг к другу (как, например, в классическом языке Си) эти


Это не совсем корректно, ибо даже в классическом Си отнюдь не любые типы приводились друг к другу неявно.

  • Да, вы можете таким образом приводить целые типы данных неявно, если это не приводит к потере данных.
    Хотя даже так можно нарваться на неприятности.
  • Можете неявно приводить целые к вещественным, но не обратно.
    Вещественные к целым можно только явно. Как-то так:

int a = 3;
float b = (float)a;

  • Большую проблему представляло (и до сих пор представляет) автоматическое приведение int к bool, что в ряде случаев может приводить просто к адским вещам.
    Хотя в 20 стандарте это обещают исправить и приведение int к bool будет считаться потерей данных (чем оно, по сути, и является) и будет требовать явного приведения.
  • Структуры и другие сложные типы данных нельзя произвольно приводить к чему попало, без явного приведения.


Так что в Си не такой уж и бардак с типизацией. Бывает и хуже, но реже.


Aracks (обс.) 08:55, 16 апреля 2020 (UTC)[ответить]