Народ, поясните plz насчет использования типов в программах на С. Читаю книгу Кернигана и Ричи "Язык программирования Си", но запутался с типами :(
Существует ли в природе какое-то неписанное (а может и писанное) правило, рекомендация использования типов в своих программах, при передаче аргуменов функций, чтобы не париться с приведением типов?Заранее благодарю!
>Народ, поясните plz насчет использования типов в программах на С. Читаю книгу
>Кернигана и Ричи "Язык программирования Си", но запутался с типами :(
>
>Существует ли в природе какое-то неписанное (а может и писанное) правило, рекомендация
>использования типов в своих программах, при передаче аргуменов функций, чтобы не
>париться с приведением типов?
>
>Заранее благодарю!да существует, надо передавать переменные того же типа, которые принимает функция :)
>>Существует ли в природе какое-то неписанное (а может и писанное) правило, рекомендация
>>использования типов в своих программах, при передаче аргуменов функций, чтобы не
>>париться с приведением типов?
>>
>>Заранее благодарю!
>
>да существует, надо передавать переменные того же типа, которые принимает функция :)
>ну а если серьезно? K&R вскользь упоминают, что вроде как компилятор внутренне преобразует параметры функции к наибольшему типу на данной платформе - что-то вроде этого, соответственно есть смысл сразу давать параметрам ф-ций наибольший тип.
Собственно вопрос касался примерно этого.
>[оверквотинг удален]
>>
>>да существует, надо передавать переменные того же типа, которые принимает функция :)
>>
>
>ну а если серьезно? K&R вскользь упоминают, что вроде как компилятор внутренне
>преобразует параметры функции к наибольшему типу на данной платформе - что-то
>вроде этого, соответственно есть смысл сразу давать параметрам ф-ций наибольший тип.
>
>
>Собственно вопрос касался примерно этого.да мало ли чего в голову взбредет компилятору, стоит ли обращать на это внимание.
смысла менять тип переменной в зависимости от того что сделает компилятор никакого нет. главное это то что должна делать функция и какие ей парметры нужны для работы.главное не изобретать сферического коня в гиперпространстве, а решать конкретную проблему.
Как я понял вопрос про продвижение типов. У K&R про Promotion of types все расписано, однако читайте кроме традиционной книги K&R еще и стандарт C и все встанет на свои места.