c是一门很好的打基础语言,作为我第一门学习的语言,我蛮喜欢c的,尽管大一下发现c在写很多题的时候不如c++等语言(c++的STL真的很好用,写题确实比c舒服)但是我依旧喜欢用c写,(一部分是长久用c养成的习惯,一部分是c++学艺不精,但也还有喜欢c的朴实无华)。
对于编程学习我近期的个人路线是c->c++打好底子后再学习其他语言。(竞赛还是用c++舒服,为了尽可能提高自己打比赛的能力我还是很乐意学cpp的,尽管相比c内容更多了)
废话不多说,接下来就是我对学c以来的简单知识总结,由于本人全靠自学理解肯定有偏差,望海涵。(为了便于理解,以下可能会有一些我编的词汇,明白意思即可),如果不想看那么长可直接看最后(毕竟下面的东西都蛮简单的,我只不过通过简单的内容来表达我的了解)
学习c离不开配合代码学习,所以我以一个最简单的代码为例进行讲解。
#include<stdio.h>
int main (){
printf("hello,world!\n");
return 0;
}
初接触c语言,以上是最基础的几行代码,但也同时反映着我们代码的整体格式。
#include<...>类格式叫做包含什么样的头文件。
每一种该格式代表一个头文件,这里我们知到了头文件,在这里我也叫它们为不同的库。不同的库封装着不同的函数(函数可以将很复杂的功能简单化,我在学的时候对它进行联想数学的函数,如y=f(x),我们假设y=后是一个项数很多,很复杂的多项式,假如我们之后做题要引用这个函数,我想我们一般不会直接照抄,我们一般会设f(x)=...,之后直接引用f函数就行了。同样,c的库也是这个意思,里面容纳各种我们需要使用的功能函数,例如abs()函数(#include<stdlib.h>),功能为给输入的数取绝对值,显然,为了实现这个功能我们如果没有引用相应的库(其实库就是存这些复杂的代码的)的话需要码更多的代码,但现实是我们通过引用库,用一个abs函数就实现了我们所需的功能。)
接下来我们看int main(){},这是我们之后写代码的主体,程序运行也是以这为切入点开始的。在大括号内就是我们的主体代码。
printf("hello,world!\n");这行是输出hellow,world!
之后再换行。printf()就是一个功能函数,其头文件就是<stdio.h>,起主要功能就是在屏幕上输出我们设定的内容。括号内我们需要按照该函数特定的规则进行输入我们的内容。(显然每个函数的括号内都有其特定的格式,如abs(int x),代表整形,整数。printf("<格式化字符串>", <参量表>),在这里不用理解括号内具体意义,但我们要形成对函数的一个整体印象。)最后的;是c的代码书写格式,每次执行操作后要加;。
return 0;表示我们的main函数即函数主体返回值是0(在之后的学习中我们会学到函数,除了void函数我们的函数都需要有返回值,具体可理解为int abs(int x),abs函数的返回值就是x的绝对值);书写格式。
总之,以上我所写的不是为了给大家具体讲解c语言的具体知识,而是更深一层的内容:学习c语言乃至其它语言,作为初学者,我们要学习该语言的格式与规范。无论是头文件,main函数,我们定义的函数,定义的变量,各种的运行,逻辑的判断等我们都要符合相应的书写格式(如不加;,写错字母,函数名),使用时满足相应的使用规范(int abs(int x)非得往里写double类型的)。当然这离不开我们去学习相应的知识和经常练习。
第一次写博客,总结我大一上半学期对c的认识。请多多指教。