在学习C方面有哪些实际项目需要考虑?

在学习C方面有哪些实际项目需要考虑?,c,C,我已经看到了很多关于为什么我应该学习C的问题和答案。我知道它是低级的,它会让我了解在那个级别上是如何工作的,它会让我成为一个更好的程序员。我知道一些好书可以帮助我学习C 我觉得我不知道的是一些实际项目,我可以帮助我学习如何使用语言。我正在读的书中有很多例子,它们对于巩固关于语言本身的知识是绝对有用的。但是我觉得我并没有深入了解“现实生活”中我可以用C做什么的例子 我的背景:我是一名刚毕业的大学毕业生,用C#做应用程序编程。我很喜欢用C语言做编程练习,但我觉得它们只是练习。我知道,很明显,我不会马

我已经看到了很多关于为什么我应该学习C的问题和答案。我知道它是低级的,它会让我了解在那个级别上是如何工作的,它会让我成为一个更好的程序员。我知道一些好书可以帮助我学习C

我觉得我不知道的是一些实际项目,我可以帮助我学习如何使用语言。我正在读的书中有很多例子,它们对于巩固关于语言本身的知识是绝对有用的。但是我觉得我并没有深入了解“现实生活”中我可以用C做什么的例子

我的背景:我是一名刚毕业的大学毕业生,用C#做应用程序编程。我很喜欢用C语言做编程练习,但我觉得它们只是练习。我知道,很明显,我不会马上成为一名专家,开始做令人惊奇的事情。我只是想了解一些我可以做的事情,帮助我变得更好,但这感觉不仅仅是锻炼。(我想澄清的是,我并不反对做这类任务来帮助我学习语言。我只是觉得如果我做一些看起来更实际的事情,我会对学习更兴奋。)

如果这“不是一个真正的问题”,我真的很抱歉,我知道关于学习C的问题已经过去了。我不想重复。我坚信我应该学习这门语言,我只是想对如何开始应用这些知识有一些真正的想法

另见

了解您在现实生活中喜欢做的事情,并尝试在应用程序中使用它们。例如,如果你喜欢游戏,试着做一个游戏,或者如果你需要一个想法,重做一个经典。如果你喜欢会计,试着用一个合适的界面制作一个会计应用程序。如果你对这个想法不感兴趣,那么你可能会在一段时间后感到疲倦,然后把它扔掉


顺便说一句,我认为你走上了一条很好的道路,我喜欢你迄今为止所做的决定。

这里有一些想法供你尝试:

  • 存储一个包含音乐目录中每个文件的哈希值的文件,并报告更改
  • 在尽可能短的时间内解决数独问题
  • 使用TCP将文件发送到另一台计算机。(同时写入服务器和客户端)
  • 通过UDP广播公共文件列表(在文本文件中配置)的程序,然后接受TCP连接以下载这些文件
  • 命令行POP3客户端
  • 编写一个内存分配器,并挂接到
    malloc

  • 祝贺你决定学习C语言。它是地球上最强大的语言,将给你你需要踢一些编程对接的基础。

    < P>学习C的方法是从任何操作系统书中试用POSIX兼容的样本。< /P> < p>编写一个编译器的子集-C.< /P> < P> >我的七步指南,寻找代码明智的做法:)/P>
  • 找到你喜欢或喜欢的东西(最好是与之相关的)
  • 找到它的问题,或者改进它的方法,否则转到步骤1
  • 将问题分为逻辑部分,这些部分将表示功能和结构,如果有助于您将问题可视化,请使用一张纸(我有时会这样做)
  • 制定你的攻击计划,即:你将如何实施你在第三步中提出的计划
  • 编码、学习、测试、学习、调试、学习、改进、学习和编码&学习更多
  • 完成了,但不是真的,这是当你回顾你所做的,惊叹于它所有的荣耀,从它所有的错误和问题中学习。看看你喜欢什么部分,讨厌什么部分,还有什么部分你可以从中学到更多
  • 转到步骤1,使用从步骤6(以及整个过程中的所有其他步骤)中获得的知识

  • 如果您没有事情可做,并且希望在商业意义上具有生产力,请查看您是否可以与日常工作中使用计算机/IT系统/等的人员交谈,了解他们发生了什么,并尝试开发可以提高他们的生产力和/或他们能够轻松完成任务的想法,谁知道,你可能会得到一些额外的知识和一些额外的现金

    有些人工智能竞赛既实用又有趣。这些将帮助您学习该语言,鼓励您理解任何示例代码、基本调试和常见算法的实现

    最重要的是它很有趣,所以它会让你保持学习的动力

    例如,几个月前,我喜欢谷歌AI挑战赛:


    祝你好运并享受:)

    同时学习C和制作界面可能不是最简单的方法。除非您使用类似SDL的东西,否则即使是gtk也可能很难启动