Учебник по C указателям и массивам с точки зрения Java
В настоящее время я новичок в колледже, специализирующийся в CS. Я просто закончил свой класс "Вступление в компьютерное программирование". Мне нравится и чувствую, что я хорошо разбираюсь.
Несколько дней назад я читал Joel "Опасность для школ Java" . "Связанный список?" Я думал, "это даже не сложно. Мы сделали кучу тех, кто уже в классе, в котором я сейчас." Это правильно, потому что на Java они не так уж трудны. Но в любом случае, я попытался дать письмо в C попробовать.
И это ТАК ЖЕ!
Джоэл был прав, я думаю... Java имеет дело с таким количеством маленьких вещей, которые вам нужны, что это действительно не так сложно. Но я решил превзойти свою школьную Java-туту и научиться писать этот связанный список dang в C.
Итак, я думаю, вместо того, чтобы пытаться задавать много и много маленьких вопросов, я спрашиваю, знает ли кто-нибудь о хорошем (и бесплатном) онлайн-учебном пособии для обучения C? В частности, узнав, как обращаться с указателями и всеми этими символами (&
, *
, **
, []
и как они работают вместе), я хотел бы думать, что я уже довольно хорошо разбираюсь в Java, поэтому мне не нужны учебники о том, как написать "Hello, World!" программа. Но тогда я определенно не готов проникнуть в какие-либо супер-продвинутые C или С++, потому что все, что я знаю, это Java.
Любая помощь оценивается!
Ответы
Ответ 1
Некоторые учебники:
Некоторые полезные ответы на указатели, которые могут помочь:
Первое - чертовски хорошо читать о указателях и их подводных камнях, если вы можете пройти синтаксис Pascal.
Ответ 2
Проверьте и проверьте, требует ли ваш учебный план системное программирование. Обычно это курс 300-го уровня, и я зачислен в следующий семестр. Он активно участвует в работе с C + GCC в Unix.
Проверьте свою библиотеку декомпозиции, если она существует. Я взял копию K & R для работы на зимнем перерыве.
Ответ 3
Это для С++, а не C; но вплоть до главы 3.7 или около того говорит о вещах на уровне машины таким образом, что это полезно для потенциальных программистов на C.
Ответ 4
Существует множество руководств по Интернету для обучения указателям. Здесь один: http://pweb.netcom.com/~tjensen/ptr/pointers.htm, который я использовал.
Я также предлагаю вам эту книгу: Взлом, искусство эксплуатации 2-го эда.
Эта книга не сделает вас "хакером". Ничто, кроме большого количества обратного проектирования/изучения двоичного кода, проб и ошибок и т.д., Будет делать это. Однако он представляет вам, как вы начинаете делать эти вещи, и это сводится к фундаментальному пониманию того, как работает C, включая указатели. Его введение в сборку /C является одним из лучших, что я видел, потому что он запускает вас через несколько примеров C и как вы исследуете, что происходит с gdb, средством отладки командной строки. Таким образом, вы можете увидеть C и увидеть сборку. Это включает в себя фундаментальное понимание того, какие указатели.
Эта книга как побочный эффект даст вам введение в стек и кучу, структуры данных и т.д. Короче говоря, чтение вступительных разделов даст вам большую пользу для остальной части вашего курса.