URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID9
Нить номер: 7674
[ Назад ]

Исходное сообщение
"правильное применение типов в программах"

Отправлено kuzmich , 29-Окт-08 07:14 
Народ, поясните plz насчет использования типов в программах на С. Читаю книгу Кернигана и Ричи "Язык программирования Си", но запутался с типами :(
Существует ли в природе какое-то неписанное (а может и писанное) правило, рекомендация использования типов в своих программах, при передаче аргуменов функций, чтобы не париться с приведением типов?

Заранее благодарю!


Содержание

Сообщения в этом обсуждении
"правильное применение типов в программах"
Отправлено NuINu , 29-Окт-08 08:51 
>Народ, поясните plz насчет использования типов в программах на С. Читаю книгу
>Кернигана и Ричи "Язык программирования Си", но запутался с типами :(
>
>Существует ли в природе какое-то неписанное (а может и писанное) правило, рекомендация
>использования типов в своих программах, при передаче аргуменов функций, чтобы не
>париться с приведением типов?
>
>Заранее благодарю!

да существует, надо передавать переменные того же типа, которые принимает функция :)


"правильное применение типов в программах"
Отправлено kuzmich , 29-Окт-08 10:40 
>>Существует ли в природе какое-то неписанное (а может и писанное) правило, рекомендация
>>использования типов в своих программах, при передаче аргуменов функций, чтобы не
>>париться с приведением типов?
>>
>>Заранее благодарю!
>
>да существует, надо передавать переменные того же типа, которые принимает функция :)
>

ну а если серьезно? K&R вскользь упоминают, что вроде как компилятор внутренне преобразует параметры функции к наибольшему типу на данной платформе - что-то вроде этого, соответственно есть смысл сразу давать параметрам ф-ций наибольший тип.

Собственно вопрос касался примерно этого.


"правильное применение типов в программах"
Отправлено NuINu , 29-Окт-08 10:55 
>[оверквотинг удален]
>>
>>да существует, надо передавать переменные того же типа, которые принимает функция :)
>>
>
>ну а если серьезно? K&R вскользь упоминают, что вроде как компилятор внутренне
>преобразует параметры функции к наибольшему типу на данной платформе - что-то
>вроде этого, соответственно есть смысл сразу давать параметрам ф-ций наибольший тип.
>
>
>Собственно вопрос касался примерно этого.

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

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


"правильное применение типов в программах"
Отправлено vic , 29-Окт-08 14:06 
Как я понял вопрос про продвижение типов. У K&R про Promotion of types все расписано, однако читайте кроме традиционной книги K&R еще и стандарт C и все встанет на свои места.