2015-07-24 2 views
8

Я изучаю программирование на языке C (на данный момент).Есть ли хорошие учебники для SDL2.0 для программирования на C? (не C++)

В теме мне было дано, мне нужно создать какой-то клон Wolfenstein3d (отсюда и название проекта, «wolf3d»). Для этого проекта мне разрешено использовать либо графическую библиотеку, созданную моей школой, либо SDL. Я выбрал SDL, потому что он более сложный в использовании и потому более интересен.

К сожалению, я не смог найти учебник для SDL2 в C. Даже ссылки на вики SDL были ориентированы на C++.

Я был бы признателен, если бы вы могли помочь мне найти хорошие учебники для SDL2 в C (хотя я знаю, что политика сайта «использует поисковую систему, что я и сделал, но, как я уже сказал, я сделал не нашли до сих пор)

Я думаю, что я, возможно, потребуется, чтобы объяснить кое-что о моей школе, для того, чтобы не дать вам впечатление, что я обращаюсь к вам за помощью, чтобы обмануть:.

Почему вы не смотрите в своем классе?

Потому что мне не дано. Мне даются проекты, которые нужно делать, а иногда несколько намеков, как я должен их делать. Я должен использовать Google или любые средства, пока я понимаю, что я сделал.

И это в значительной степени. Я также не ищу учебник о том, как создать клонирование wolfenstein3d с использованием SDL2.0, но только учебник о том, как использовать сам SDL2, от создания окна до точек рисования.

+2

Вопросы, требующие внеурочных ресурсов (например, учебники), не относятся к теме для StackOverflow. – JAL

+0

Возможный дубликат [Обучение SDL в C] (http://stackoverflow.com/questions/6616601/learning-sdl-in-c) – MC10

+0

@ MC10, что один для SDL 1. – Quentin

ответ

14

Если бы я тебя, я хотел бы использовать учебники, доступные на странице SDL здесь:

http://wiki.libsdl.org/Tutorials

В сочетании с документацией API здесь:

http://wiki.libsdl.org/APIByCategory

API-интерфейс написан на C, поэтому, несмотря на то, что учебники могут быть на C++, вы должны следовать руководству, ссылаясь на документы API и понимая функциональную структуру примера программы s.

Как начинающий разработчик, вы должны понимать синтаксис C++, чтобы понять концептуальный способ разработки аналогичного приложения на C. Запросы API должны быть сделаны аналогичным образом.

Рассмотрим эту страницу из одного из связанных учебников (который заявлен как для C++):

http://lazyfoo.net/tutorials/SDL/01_hello_SDL/index2.php

ли какие-либо из этих блоков кода действительно чужды вам? Их не должно быть, они написаны на C. Если вы сталкиваетесь с некоторыми выражениями, которые вы не знакомы, когда вы проходите через учебник, обратитесь к API. Если вы все еще в тупике, возможно, настанет время для публикации в StackOverflow. Этот конкретный учебник может быть полностью написан на C, я не уверен, что я прошел через первые несколько страниц.

отметить также, что функция документации в SDL документации API дает С и С ++ пример кода:

http://wiki.libsdl.org/SDL_Init

Здесь вы можете пересечь эталонные двух идентичных программ в C и C++ и начать, чтобы узнать, как же операции выполняются на двух языках. Оттуда вы можете начать интерпретировать учебники C++ для функциональных операций высокого уровня и перевести их на C, а не просто копировать образцы кода. Вы узнаете гораздо больше об этом процессе.

К вашему собственному признанию вы решили пойти по сложному маршруту. Вы должны быть готовы вложить некоторые усилия в процесс!

+3

Вы, вероятно, очень помогли мне (хотя я еще не читал все эти ссылки), несмотря на политику Stackoverflow относительно «просить учебник», и для этого я действительно замечателен. Большое спасибо. Большинство учебных пособий, которые я видел до сих пор, начали создавать класс (который я пытаюсь представить как нечто вроде структуры), и я боялся «перевести их» на C. Но вы правы, я должен попросили о помощи по этому поводу. В любом случае, еще раз спасибо (много). – MrChwepsy

Смежные вопросы