C语言考研知识点
-
C 语言把任何非零和非空的值假定为 true,把零或 null 假定为 false。
-
运算符运算时ture为1,false为0
-
strcmp() 会根据 ASCII 编码依次比较 str1 和 str2 的每一个字符,直到出现不同的字符,或者到达字符串末尾(遇见\0)。
返回值:
如果返回值 < 0,则表示 str1 小于 str2。
如果返回值 > 0,则表示 str2 小于 str1。
如果返回值 = 0,则表示 str1 等于 str2。 -
int a[]={5,7,9}, *p;
p=a;
*p+++1=a[0]+1,且p指向了a[1] -
int a[3][4] = {{1, 2, 3, 4}, {5, 6, 7, 8}, {9, 10, 11, 12}};
-
输出格式:
%md: m为指定输出数据的宽度 如果位数小于m,则左端补以空格,如果大于m,则按实际位数输出
显然a=1234的位数是4 大于%2d中指定的长度2 按实践位数输出 所以结果为1234
%m.nf格式:指定输出数据宽度为m位,其中小数占n位,如果数值长度小于m,则左端补空格,%7.2f指定 输出的数据占7列,其中包括2位小数,注意小数点占一位。
例如: printf("%20.15f\n",a/3); 运行结果: 0.333333333333333,即:3个空格,1个0,一个点,15个3。
%-m.nf: 当数据不超过m时,数据向左靠,右端补空格。 -
pow() 函数:
用来求 x 的 y 次幂(次方),其原型为:
double pow(double x, double y); -
文件读写:
读写字符:
fgetc(fp):从fp指向的文件读入一个字符。返回值是读取的字符,如果发生错误则返回 EOF。
fputc(ch,fp):把字符ch写到文件指针变量fp所指的文件中。如果写入成功,它会返回写入的字符,如果发生错误,则会返回 EOF。读写字符串:
fgets(str,n,fp):从fp指向的文件读入一个长度为(n-1)的字符串,存放到字符数组str中。如果这个函数在读取最后一个字符之前就遇到一个换行符 ‘\n’ 或文件的末尾 EOF,读入即结束,但将所遇到的换行符“\n”也作为一个字符读入。
fputs(str,fp):把str所指向的字符串写入到文件指针变量fp所指向的文件中。用格式化方式读写文本文件:
fprintf(文件指针,格式字符串,输出表列)
eg: fprintf(fp,"%d,%6.2f",i,f);
fscanf(文件指针,格式字符串,输入表列)
eg: fscanf(fp,"%d,%f",&i,&f);用二进制方式向文件读写一组数据:
fread(buffer,size,count,fp)
fwrite(buffer,size,count,fp)
buffer: 是一个地址。对fread来说,它是用来存放从文件读入的数据的存储区的地址;对fwrite来说,是要把此地址开始的存储区中的数据向文件输出。(地址是指起始地址)
size: 要读写的字节数。
count:要读写多少个数据项(每个数据项长度为size)
fp: FILE类型指针
例如:
fread(&stud[i],sizeof(struct Student_type),1,fp);
fread(&stud[i],sizeof(struct Student_type),1,fp); -
“向上兼容”–即:不同数据类型的数据参与运算,数据类型要强制转换,转换的方向是: (unsigned)char,(unsigned)short->int->unsigned->long->unsigned long->float->double->longdouble。
-
char类型数组中存储字符串末尾’\0’情况
-
很nice的一篇C语言总结 https://blog.csdn.net/qq_36657788/article/details/103678555
-
逗号表达式. c语言 提供一种特殊的 运算符 , 逗号运算符 ,优先级别最低,它将两个及其以上的式子联接起来,从左往右逐个计算表达式,整个表达式的值为最后一个 表达式 的值。. 如:(3+5,6+8)称为逗号表达式,其求解过程先表达式1,后表达式2,整个表达式值是表达式2的值,如:(3+5,6+8)的值是14;a= (a=35,a4)的值是60,其中a=(35,a4)的值是60, a的值在逗号表达式里一直是15,最后被逗号表达式 赋值 为60,a的值最终为60。.
-
字符串函数 <string.h>