user-0 提问: 我可以请教大家一些白痴的问题嘛..？

回复:
user: user-1
content: 学习在于交流，更在于你寻求一个好老师！这是一种捷径！现在所有的东西都跟基础公式一样，你只有了解了才可以好好应用，怎么快速了解？看视频，问老师！另外，确定好自己的方向，不能弄得太宽泛，导致什么都好像懂，又什么都不懂！

user: user-2
content: 1.为什么我写出来的程序全都是一些黑白的东西...然而别人的程序中能够拥有彩色的图标..和炫耀的背景和选项...  黑白也是彩色中的颜色； 黑白的东西也有图标； 黑色的背景虽然不炫但它的确也是背景； 黑白的东西也可以有选项； 此乃一。  想要在这一行走远，把概念弄清楚很重要； 而要把概念弄清楚，首先得把它的名字弄清楚； 黑白的东西叫控制台程序，或者console application，或者命令行程序； 名字可以有很多，但是指的都是同一个东西，就是黑白的东西； 无论叫它什么名字，都比叫黑白的东西要好； 别人的程序叫图形界面程序，或者GUI程序； 此乃二。  你的疑问来自于你并没有去写GUI程序，所以你的程序不是别人的程序； 你没有去写（GUI程序）是因为你不会； 你不会是因为你没有去学； 你没有去学极有可能是因为你没有意识到它是GUI程序（你没有GUI程序的概念）； 相信你没有学习，连黑白的东西（console application）都写不出来； 此乃三。  编程的本质都是一样的，所以说写console还是写GUI其实是一样的； 编程的外延又是很广泛的，所以能写console不代表立马能写出GUI来，因为它们各有各的细节需要学习／处理。  2.为什么学习高级语言的编程还要学习操作系统..?是不是这些操作系统能提供一些API的函数为高级语言所使用?  不用强调高级语言，目前学的都是高级语言；相信LZ暂时对汇编也没兴趣； 没有规定说学习语言就要学习操作系统；完全可以学习语言和语言的库； 之所以说要学习操作系统，是因为语言本身做不了什么事情；而库有一部分，是对系统的封装；还有一部分功能，是需要直接调用系统的服务（API）来完成。  3.数据库和高级语言的关系是什么.?或者说..学数据库对高级语言有什么帮助..?  没有什么特别的关系，编程领域的两个不同的方面； 编程的时候，有很大一块是处理数据，数据库是处理数据的好工具； 数据库的语言SQL，也是种语言。  4.对于深造高级语言的选择是选择C好还是选择C++好,如果以后想编写软件的话.?  这个问题有问题； 想要“深造语言”，选C还是C++都很好； 想要写软件的话，选择更多，C，Java，Python⋯⋯都很好。  5.可以举一些用C或者C++写出来的软件吗?...  可以这样认为，其实现在LZ能接触到的，和程序有关的，其实都是基于C的； 比如UNIX/Linux操作系统，比如浏览器，比如网络，比如Web服务器（这些都是LZ能发这个贴子而需要的东西，也是C语言写出来的软件）； http://www.stroustrup.com/applications.html  由于一直都是在自学编程...这些的基础知识我都不知道..搜索百度都没有统一的回答..所有在这里想请教一下csdn的大神...  // 也许可以尝试下Google  还有就是自学编程真的不是一件容易的事......因为一直都只知道在win32控制台下写代码...确不知开发一个项目和产品除了要高级语言后还需要一些什么..  // 先把语言学好，这是最简单的东西  最后的是..c、c++、Linux c、网络编程、多进程 、多线程、数据结构、数据库、脚本语言（主流shell）这样的学习方向以后的就业方向是什么..?  // Linux程序员（这是最典型的，但是不限于）； 可以上招聘网转转。

user: user-3
content: 1楼的回答很详细，学习之~~ 说的这句话更好： 以编程为工作，你只需要在需要用什么的时候，会用。 以编程为兴趣，没有什么不是你不需要学的。@zhouqinghe24  10楼赵4老师的这样的回复在很多帖子都可见啊！@zhao4zhong1

user: user-4
content: 计算机组成原理→DOS命令→汇编语言→C语言（不包括C++）、代码书写规范→数据结构、编译原理、操作系统→计算机网络、数据库原理、正则表达式→其它语言（包括C++）、架构……  对学习编程者的忠告： 多用小脑和手，少用大脑、眼睛和嘴，会更快地学会编程！ 眼过千遍不如手过一遍！ 书看千行不如手敲一行！ 手敲千行不如单步一行！ 单步源代码千行不如单步Debug版对应汇编一行！ 单步Debug版对应汇编千行不如单步Release版对应汇编一行！  单步类的实例“构造”或“复制”或“作为函数参数”或“作为函数返回值返回”或“参加各种运算”或“退出作用域”的语句对应的汇编代码几步后，就会来到该类的“构造函数”或“复制构造函数”或“运算符重载”或“析构函数”对应的C/C++源代码处。  VC调试时按Alt+8、Alt+7、Alt+6和Alt+5,打开汇编窗口、堆栈窗口、内存窗口和寄存器窗口看每句C对应的汇编、单步执行并观察相应堆栈、内存和寄存器变化，这样过一遍不就啥都明白了吗。 对VC来说，所谓‘调试时’就是编译连接通过以后，按F10或F11键单步执行一步以后的时候，或者在某行按F9设了断点后按F5执行停在该断点处的时候。 （Turbo C或Borland C用Turbo Debugger调试,Linux或Unix下用GDB调试时,看每句C对应的汇编并单步执行观察相应内存和寄存器变化。）

user: user-5
content: 1.为什么我写出来的程序全都是一些黑白的东西...然而别人的程序中能够拥有彩色的图标..和炫耀的背景和选项... 他们这些炫酷的东西的核心也是有些黑白的东西。比如你用c++写控制台的程序，出来的就是黑白的（最多有一些字体颜色的变化），但是假如你写的是java，MFC之类的应用程序，你运行出来的就是一个有图像有按钮的东西。慢慢来，先把控制台的学好。然后再学习其他的。 ps：炫酷的仅仅是外观，编写这些程序的时候也是会用到数组，指针等你现在理解的东西。  2.为什么学习高级语言的编程还要学习操作系统..?是不是这些操作系统能提供一些API的函数为高级语言所使用? 学习高级语言了解操作系统是有好处的，但是这不是必须的。不同的操作系统提供了不同的API，有专门的文档告诉你怎么用，将来看到了去百度一下或者查查说明文件即可。比如UNIX环境高级编程这本书就是讲解了UNIX提供编程的APT。而MFC则是使用windows的API。  3.数据库和高级语言的关系是什么.?或者说..学数据库对高级语言有什么帮助..? 就像文件和C语言的关系，数据库提供接口（文件也有接口，比如fopen等），供程序使用，然后就可以再数据库中操作数据（就好比在文件中操作一样）；数据库对高级语言没有帮助——它对软件有帮助，对编程人员有帮助——因为他是一个工具，高级语言是不会讲解数据库的，你需要找额外的讲解数据库的书看  4.对于深造高级语言的选择是选择C好还是选择C++好,如果以后想编写软件的话.? C 或者C++都是其他很多高级语言的基石，你要学好这两者！但是看你以后想怎么发展，假如想做Android开发的话我告诉你你可能学的很多都用不上，因为你要重新学习java。所以先选好自己的路很重要  5.可以举一些用C或者C++写出来的软件吗?... Linux内核是用C、c++写的。然后还有 Microsoft Windows Symbian OS Apple MacOS UI (Aqua) KDE Oracle database MySQL Microsoft SQL Server Microsoft Internet Explorer Mozilla Firefox Safari Google Chrome Opera Microsoft Visual Studio Microsoft .Net CLR Java Virtual Machine (JVM) Adobe Photoshop Google Microsoft Visual C++         Microsoft Visual Basic Microsoft Visual C# Microsoft DirectX

user: user-6
content: 引用 楼主 ikuovbs 的回复:我是一位自学编程的人...在自学的过程中...有些东西难免让我郁闷... 1.为什么我写出来的程序全都是一些黑白的东西...然而别人的程序中能够拥有彩色的图标..和炫耀的背景和选项... 2.为什么学习高级语言的编程还要学习操作系统..?是不是这些操作系统能提供一些API的函数为高级语言所使用? 3.数据库和高级语言的关系是什么.?或者说..学数据库对高级语言有什么帮助..? 4.对于深造高级语言的选择是选择C好还是选择C++好,如果以后想编写软件的话.? 5.可以举一些用C或者C++写出来的软件吗?... 由于一直都是在自学编程...这些的基础知识我都不知道..搜索百度都没有统一的回答..所有在这里想请教一下csdn的大神... 还有就是自学编程真的不是一件容易的事......因为一直都只知道在win32控制台下写代码...确不知开发一个项目和产品除了要高级语言后还需要一些什么..  最后的是..c、c++、Linux c、网络编程、多进程 、多线程、数据结构、数据库、脚本语言（主流shell）这样的学习方向以后的就业方向是什么..? 回答这么认真，顶一个！

user: user-7
content: 重要的是 打好基础。不要 好高骛远。   高楼大厦起于平地。

user: user-7
content: 引用 3 楼 ikuovbs 的回复:[quote=引用 1 楼 zhouqinghe24 的回复:] 1.为什么我写出来的程序全都是一些黑白的东西...然而别人的程序中能够拥有彩色的图标..和炫耀的背景和选项...   色彩炫酷只是程序的外衣。外衣一般来说是美工做的。写程序只是把衣服展现出来，就像一个衣架子。 再漂亮的衣服叠起来也没人知道它漂亮。需要有人穿起来才行。   2.为什么学习高级语言的编程还要学习操作系统..?是不是这些操作系统能提供一些API的函数为高级语言所使用?    操作系统是要你了解系统设计的原理，就如你要学习物理学，就需要知道牛顿的定律一样，你要开发在操作系统上运行的程序，就应该知道，或者了解操作系统的原理，哪怕是简单原理。  3.数据库和高级语言的关系是什么.?或者说..学数据库对高级语言有什么帮助..?   数据库跟高级语言一毛钱关系都没有。 数据库只是提供存储数据的一种方式，就像你把你的日记写在日记本上，记录了你的数据，但是 ，日记本，跟你从小学习的中文有什么关系呢？   数据库只是一个特殊的日记本，你需要按照它的规则来记录你的数据，配合开发语言，可以按照一定的标准开发程序，提高开发效率，避免重复造车轮的事情（这里是指不用自己定义数据存储结构了）。   4.对于深造高级语言的选择是选择C好还是选择C++好,如果以后想编写软件的话.?   C 和C ++ 都是工具。语言的差异，使得每个语言在某个领域或业务非常擅长，比如迅雷和快播的区别，都可以下载电影，但是他们 的区别你懂得。 擅长不同而已。   这个擅长不同不仅仅指C 和C++。  5.可以举一些用C或者C++写出来的软件吗?...   今天帮别人安装Dreamweaver时发现， 它就有MFC的程序。还有很多，比如你现在在用的windows 系统， linux 操作系统，大部分都是C 的实现。  最后的是..c、c++、Linux c、网络编程、多进程 、多线程、数据结构、数据库、脚本语言（主流shell）这样的学习方向以后的就业方向是什么..?   就业问题，最是复杂了。。这个学习方向，可以做linux服务器编程。   那我可以理解为数据库那些 操作系统那些对于编程来说只是为了了解而已嘛?真正重要的是深造语言和数据结构和算法吗?[/quote]  以编程为工作，你只需要在需要用什么的时候，会用。  以编程为兴趣，没有什么不是你不需要学的。

user: user-0
content: 引用 2 楼 user-8 的回复:这种问题就好像是问 如果我想成为像爱因斯坦一样的科学家  我需要学习什么？ 没有人可以回答  因为没人知道你究竟懂什么  或许吧..当你学一样东西没人指引的情况下..你又不知这东西最后能变成什么....这样你将很难找到一个适当的理由让自己坚持下去.....当然除了兴趣

user: user-0
content: 引用 1 楼 zhouqinghe24 的回复:1.为什么我写出来的程序全都是一些黑白的东西...然而别人的程序中能够拥有彩色的图标..和炫耀的背景和选项...   色彩炫酷只是程序的外衣。外衣一般来说是美工做的。写程序只是把衣服展现出来，就像一个衣架子。 再漂亮的衣服叠起来也没人知道它漂亮。需要有人穿起来才行。   2.为什么学习高级语言的编程还要学习操作系统..?是不是这些操作系统能提供一些API的函数为高级语言所使用?    操作系统是要你了解系统设计的原理，就如你要学习物理学，就需要知道牛顿的定律一样，你要开发在操作系统上运行的程序，就应该知道，或者了解操作系统的原理，哪怕是简单原理。  3.数据库和高级语言的关系是什么.?或者说..学数据库对高级语言有什么帮助..?   数据库跟高级语言一毛钱关系都没有。 数据库只是提供存储数据的一种方式，就像你把你的日记写在日记本上，记录了你的数据，但是 ，日记本，跟你从小学习的中文有什么关系呢？   数据库只是一个特殊的日记本，你需要按照它的规则来记录你的数据，配合开发语言，可以按照一定的标准开发程序，提高开发效率，避免重复造车轮的事情（这里是指不用自己定义数据存储结构了）。   4.对于深造高级语言的选择是选择C好还是选择C++好,如果以后想编写软件的话.?   C 和C ++ 都是工具。语言的差异，使得每个语言在某个领域或业务非常擅长，比如迅雷和快播的区别，都可以下载电影，但是他们 的区别你懂得。 擅长不同而已。   这个擅长不同不仅仅指C 和C++。  5.可以举一些用C或者C++写出来的软件吗?...   今天帮别人安装Dreamweaver时发现， 它就有MFC的程序。还有很多，比如你现在在用的windows 系统， linux 操作系统，大部分都是C 的实现。  最后的是..c、c++、Linux c、网络编程、多进程 、多线程、数据结构、数据库、脚本语言（主流shell）这样的学习方向以后的就业方向是什么..?   就业问题，最是复杂了。。这个学习方向，可以做linux服务器编程。   那我可以理解为数据库那些 操作系统那些对于编程来说只是为了了解而已嘛?真正重要的是深造语言和数据结构和算法吗?

user: user-8
content: 这种问题就好像是问 如果我想成为像爱因斯坦一样的科学家  我需要学习什么？ 没有人可以回答  因为没人知道你究竟懂什么

user: user-7
content: 1.为什么我写出来的程序全都是一些黑白的东西...然而别人的程序中能够拥有彩色的图标..和炫耀的背景和选项...   色彩炫酷只是程序的外衣。外衣一般来说是美工做的。写程序只是把衣服展现出来，就像一个衣架子。 再漂亮的衣服叠起来也没人知道它漂亮。需要有人穿起来才行。   2.为什么学习高级语言的编程还要学习操作系统..?是不是这些操作系统能提供一些API的函数为高级语言所使用?    操作系统是要你了解系统设计的原理，就如你要学习物理学，就需要知道牛顿的定律一样，你要开发在操作系统上运行的程序，就应该知道，或者了解操作系统的原理，哪怕是简单原理。  3.数据库和高级语言的关系是什么.?或者说..学数据库对高级语言有什么帮助..?   数据库跟高级语言一毛钱关系都没有。 数据库只是提供存储数据的一种方式，就像你把你的日记写在日记本上，记录了你的数据，但是 ，日记本，跟你从小学习的中文有什么关系呢？   数据库只是一个特殊的日记本，你需要按照它的规则来记录你的数据，配合开发语言，可以按照一定的标准开发程序，提高开发效率，避免重复造车轮的事情（这里是指不用自己定义数据存储结构了）。   4.对于深造高级语言的选择是选择C好还是选择C++好,如果以后想编写软件的话.?   C 和C ++ 都是工具。语言的差异，使得每个语言在某个领域或业务非常擅长，比如迅雷和快播的区别，都可以下载电影，但是他们 的区别你懂得。 擅长不同而已。   这个擅长不同不仅仅指C 和C++。  5.可以举一些用C或者C++写出来的软件吗?...   今天帮别人安装Dreamweaver时发现， 它就有MFC的程序。还有很多，比如你现在在用的windows 系统， linux 操作系统，大部分都是C 的实现。  最后的是..c、c++、Linux c、网络编程、多进程 、多线程、数据结构、数据库、脚本语言（主流shell）这样的学习方向以后的就业方向是什么..?   就业问题，最是复杂了。。这个学习方向，可以做linux服务器编程。