По мойму return; можно не указывать тип main нельзя. Стандарт поддерживает мало компиляторов,почитайте Криса Касперски он говорил который ближе к стандарту...
Ниче не понял из того что ты сказал))) Вобще в C можно не указывать твз а вот идеология С++ этого требует! и под майкрософтом 6 это будет ошибкой!
Самое интересное то что я не упоминал о стандартах, а о хорошем стиле программирования. Я всегда писал и буду писать main() без int до тех пор пока компилятор не будет выдавать предупреждение или ошибку потому что в многих компиляторах
Короче попытаюсь рассудить пока до мордобоя не дошло=) "считается хорошим стилем программирования" - где и кем считается? возможно в других местах и другими людьми считается "хорошим стилем программирование" как раз обратное? Это не ошибка также с точки зрения борланд Си, ватком Си да и куче других, так что ни микрософт ни висуал студия тут никаким боком. а вот тут вы все неправы. тип возвращаемого значения зависит от интерпретации: это может быть char, short, int и даже long (знаковые или без - как хотите) если нужно. применительно же к консольным приложениям и функции main() в частности - это всего-навсего char. А в общем смысле - все что на выходе функции находится в регистре eax/ax/al (иногда компиляторы используют пару dx:ax/edx:eax если нужно вернуть б`ольшее значение) - и есть возвращаемое значение функции. Ну все, хватит об этом, ато все вцепились в мэин и даже никто не заметил что: PHP: printf("\n Number of ounces ", ounces); а также что PHP: int o_to_c (int ounces1) { int cup1; if (ounces1) { if (!(ounces1 % 8)) cup1 = ounces1 / 8; else cup1 = ounces1 / 8 + 1; } else cup1 = 0; return (cup1); } можно записать попроще: PHP: int o_to_c (int ounces1){ int cup1=ounces1>>3; if (ounces1&7) cup1++; return cup1; }
Емли уж такая херня со стилем пошла еще от себя могу добавить: cup1 = !(ounces1 % 8) ? ouncess1>>3 : ounces1 >>3 + 1; А что касается main то если компилятор сьел отсутствие типа то это не ошибка всеравно в eax запишется integer и программа никак не упадет из-за этого.
da_ff, дружочек, % - это деление а & - побитовый AND с маской. как ты думаешь что работает быстрее? И еще скобочки забыл, да: (ounces1 >>3) + 1; ?
Ну блин, какой такой стиль? В этом сезоне весна-лето принято програмить вот так-то и так-то. А тот кто програмит не так - немодный пацан? =) Програмить нужно практично. т.е. какой вообще смысл использовать % по модулю степени двойки, если можно записать оптимальнее? А тот для кого это недостаточно наглядно может идти доучиваться дальше. Если я один чегото там пишу то я пишу прежде все так как мне удобней чтобы легко разбираться самому в своем же коде. А если мы пишем в группе, или исходный текст планируется сделать общедоступным, - тогда можно воспользоваться венгерской нотацией, структурным, процедурным, логическим или объектно-ориентировочным подходом. ЗЫ. Вы же сами себе противоречите: почему тогда >>3 а не /8 ? =)
Ну епте яж уже согласился, так продуктивнее, под стилем я имел ввиду конструкцию замещающую if(){}else{}. И еще порабы закончить тему, за ненадобностью.