我用c99标准研究和试验c语言已有近3个月了,我读完的所有内容都告诉我如何在DOS(控制台)中编程,但不是在GUI方面,我知道任何专业可能会说我应该继续坚持在DOS下编程,这样我就可以学习语言的本质,而不需要专注于创建GUI,这可以减少学习麻烦,但我只是想知道我是否想要创建GUI应用程序,什么东西我应该学会了吗?不要担心我会在进入GUI之前完成基础和一切的学习,暂时我只是好奇并且想要问。谢谢。
答案 0 :(得分:4)
首先,如果您主要关注的是学习编写GUI的话......您可能选择了错误的语言!
如果你愿意考虑C ++,你应该看看Qt。 wxWidgets也很不错。
如果你真的要坚持使用C,请看看GTK +。
答案 1 :(得分:2)
首先, CLI ,如命令行界面而非DOS。
第二个GUI编程在模式上有所不同,需要掌握很多操作系统知识,例如GUI程序通常是面向事件和线程的,但CLI通常是顺序和单线程的。
如果您熟悉C和C ++,我建议使用Qt SDK,它非常易于使用,具有完整的帮助系统,并且几乎可以用于任何目的的IDE。
由于GUI编程非常依赖于平台,因此通用C书籍不会谈论它。
答案 2 :(得分:1)
C不是gui开发的好语言。该语言及其标准库不包含任何gui支持。除非你想从头开始构建自己的用户界面框架,否则你应该使用一个现有的框架 - 而这些框架总是面向对象的。因此,我的建议是通过学习C ++来扩展你的C技能。
在Windows上,MFC是一个很好的C ++框架。虽然它有点过时,但网上仍有很好的工具支持和大量资源。
在Linux / Unix上,您可以尝试Qt或wxWidgets,它们是跨平台的,也支持Windows。
如果您坚持只使用C,那么AFAIK是您在Windows上的唯一选择win32 api。不过,我强烈反对这一点,因为它需要付出很多努力才能生成非常简单的接口。
答案 3 :(得分:0)
这取决于,如果你可能想要复杂的gui,有很酷的效果和动画,那么你可以创建一个渲染窗口(比如游戏使用)并使用像SDL或OpenGL这样的渲染器
在Windows上,带有gdi的win32 API是标准的(虽然我个人讨厌使用它)
答案 4 :(得分:0)
如果你计划使用任何形式的Windows编程,那么你应该得到Charles Petzold的书“Programming Windows”,即Windows圣经。除此之外,它涉及Windows的“原始”GUI编程,即Visual Studio等RAD工具幕后的所有事情。
答案 5 :(得分:0)
你真的不想在C中进行GUI开发。即使有一个像样的框架,你也必须处理wazoo中的回调和内存管理问题。对于GUI驱动程序而言,为“简单”程序编写的代码量大约比CLI驱动程序大一个数量级。
这不是 hard ,这只是屁股中的皇室痛苦。
C是非图形后端或服务器的理想选择;图形客户端,而不是。