298 / 107 / 31
Регистрация: 12.03.2012
Сообщений: 449
|
|
1 | |
В чем разница между int main(){} и int main(void){}?09.04.2012, 16:00. Показов 10889. Ответов 19
Метки нет (Все метки)
Только недавно начал изучать язык, и появилось несколько вопросов:
1) в чем разница между int main(){} и int main(void){}? 2) в чем разница между string.h string и cstring? 3) почему объявление char s[10]="0123456789"; переполняет массив? ведь с 0 по 9 элемент 10 символов, а 10 - \0? 4) для чего нужен экземляр структуры в виде функции? т.е struct func1() {}? чем он отличается от обычной функции? вроде пока все) P.S Прошу прощения что вопреки правилам все в одной теме, но не создавать же по таким пустякам столько тем
0
|
09.04.2012, 16:00 | |
Ответы с готовыми решениями:
19
Какая разница между int main и void main? int main() или int main(void)? Какой новые синтаксис: int main() VS. void main() Почему в одних случаях пишут void main(), а в других случаях int main() {return 1;} |
Каратель
|
||||||
09.04.2012, 16:08 | 2 | |||||
в C++ разницы никакой, в Си:
string - сожердит класс basic_string cstring - оборачивает функции из string.h в пространство имен std последние два хедера - относятся только к С++ строки в двойных кавычках автоматически имеют нулевой завершающий символ покажи пример, не совсем ясно что ты имеешь ввиду
1
|
298 / 107 / 31
Регистрация: 12.03.2012
Сообщений: 449
|
||||||
09.04.2012, 16:36 [ТС] | 3 | |||||
0
|
58 / 58 / 6
Регистрация: 10.07.2011
Сообщений: 229
|
|
09.04.2012, 16:42 | 5 |
0
|
298 / 107 / 31
Регистрация: 12.03.2012
Сообщений: 449
|
|
09.04.2012, 16:43 [ТС] | 6 |
0
|
58 / 58 / 6
Регистрация: 10.07.2011
Сообщений: 229
|
|
09.04.2012, 16:48 | 7 |
0
|
Каратель
|
|
09.04.2012, 16:49 | 8 |
что значит обычная? это и есть обычная функция
проще вообще ничего не возвращать 10 символов, но под эти 10 символов отводится 11 ячеек памяти, так понятно?
1
|
298 / 107 / 31
Регистрация: 12.03.2012
Сообщений: 449
|
|
09.04.2012, 16:52 [ТС] | 9 |
0
|
58 / 58 / 6
Регистрация: 10.07.2011
Сообщений: 229
|
|
09.04.2012, 16:54 | 10 |
1
|
298 / 107 / 31
Регистрация: 12.03.2012
Сообщений: 449
|
|
09.04.2012, 16:59 [ТС] | 11 |
только недавно структуры начал, просто у автора книги есть особенность: пояснять очевидное и игнорировать непонятное)
0
|
Каратель
|
|||||||||||
09.04.2012, 17:00 | 12 | ||||||||||
1
|
09.04.2012, 17:00 | 13 |
int sum(int x, int y){return x+y;} объявлена как переменная типа int int в начале обозначает тип возвращаемого объекта и если мы хотим возвратить из функции структуру Мы такую функцию объявляем struct key sum(){...итд слово (struct key) является типом и может использоваться везде, где используются и встроенные типы (int): возвращаемые значения функций передаваемые им аргументы указатели и.т.д
1
|
298 / 107 / 31
Регистрация: 12.03.2012
Сообщений: 449
|
|
09.04.2012, 17:03 [ТС] | 14 |
спасибо, это понял, просто в книге это было описано как создание экземпляра прототипа
а что насчет
0
|
Каратель
|
|
09.04.2012, 17:03 | 15 |
11-й символ отводится под завершающий строку символ - 0(всмысле ASCII код этого символа равен нулю)
http://ru.wikipedia.org/wiki/%... 0%BE%D0%B2 http://ru.wikipedia.org/wiki/%... 0%BB%D1%8B
1
|
298 / 107 / 31
Регистрация: 12.03.2012
Сообщений: 449
|
||||||
09.04.2012, 17:06 [ТС] | 16 | |||||
0
|
58 / 58 / 6
Регистрация: 10.07.2011
Сообщений: 229
|
|
09.04.2012, 17:08 | 17 |
Не 2, а одна ячейка. При объявлении массива s[5], пять - это размер массива, т.е. [0],[1],[2],[3],[4]. Нумерация начинается с нуля. Последний элемент твоего массива будет иметь индекс 4.
1
|
18 / 18 / 4
Регистрация: 18.05.2010
Сообщений: 83
|
|
09.04.2012, 17:11 | 19 |
если объявить массив так - s[10], то у тебя есть 10 доступных ячеек с индексами от 0 до 9. Вот и получается, что для "012345679" уже нужно 10 ячеек, а нужна ещё одна для '\0'.
1
|
298 / 107 / 31
Регистрация: 12.03.2012
Сообщений: 449
|
|
09.04.2012, 17:15 [ТС] | 20 |
Вылетело это из головы, считал что s[3] есть s[0],s[1],s[2],s[3] давно массивы проходил) спасибо всем
0
|
09.04.2012, 17:15 | |
09.04.2012, 17:15 | |
Помогаю со студенческими работами здесь
20
Void main or Int main int main() VS void main() От void main() к int main() в чем разница между void f(int &n) и void f(int &&n) Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |