随笔分类 - C
摘要:int putchar(int c):向标准输出写一个字符,返回写了几个字符,EOF(-1)表示写失败 int getchar(void):向标准输出读入一个字符 ctrl+c终止以后所有程序;Ctrl+z进入下一段程序(有点像break和continue,终止所有的和跳出) #include <s
阅读全文
摘要:给一个指针加1表示要让指针指向下一个变量,也就是在地址值上加一个sizeof(指针所指的类型),例如: int a[10]; int *p=a; *(p+1)=a[1]; *(p+n) ac[n] 同理:这些指针运算可以对指针做: 1.给指针加减一个整数(减就是往前移一位) 2.递增递减(++/--
阅读全文
摘要:1.终端输入的数据要和scanf里面的格式保持高度一致 scanf函数里面%d和%d之间如果是空格,那么终端就得是空格,如果是逗号终端输入的时候就得是逗号,不然读取不到数据 1 #include <stdio.h> 2 int main() 3 { 4 int a=0; 5 int b=0; 6 s
阅读全文
摘要:字符串赋值: 以下面代码为例: 把t的字符串的值赋给了a,但是并没有产生新的字符串,只是让指针a指向了t所指的字符串,t和a指向的是同一个地方,对a的任何操作就是对t做的 #include <stdio.h> int main() { char *t="title"; char *a; a=t; p
阅读全文
摘要:1.关于字符数组和字符串的区别:(字符串以0或'\0'结尾) 字符数组: #include <stdio.h> int main() { /* Write C code in this online editor and run it. */ char a[]={'h','e'}; int i; f
阅读全文
摘要:指针变量就是记录地址的变量 int i; int* p=&i; *表示p是一个指针,指向的是int,现在把i的地址交给p(也叫p指向i) int* p,q; 这一行和下一行都是表示p是指针指向int,而q只是一个普通的int类型的变量 *p是一个int,不管*靠近int还是p int *p,q; 如
阅读全文
摘要:&的作用是获得变量的地址,他的操作对象必须是变量 数组变量是特殊的指针 : 数组变量本身表达地址,所以,int a[10];int*p=a; //这里无需用&取地址 但是数组的单元表达的是变量,需要用&取地址 a==&a[0] []运算符可以对数组做,也可以对指针做:p[0]==a[0] *运算符可
阅读全文
摘要:#include <stdio.h> int main(){ /** int a[3][5]; 通常理解a为一个三行五列的矩阵 */ //二维数组的遍历 int a[3][5]; int i,j; for(i=0;i<3;i++){ for(j=0;j<5;j++){ a[i][j]=i*j; }
阅读全文
摘要:#include <stdio.h> int main() { int i; //遍历输出分别值 int a[]={1,2,3,4,5}; for(i=0;i<5;i++){ printf("%d\t",a[i]); //1 2 3 4 5 }; printf("\n"); //若给的值不够就用0补
阅读全文
摘要:大小确定了,容量就不能改变了。数组的下标从0开始编号 数组的初始化可以 int a[整数],也可以集成初始化int a[]={1,2,3,4}; 以以下代码为例:重点在于 定义数组容量 对数组的每个元素循环赋值 遍历数组 1 #include <stdio.h> 2 int main(){ 3 4
阅读全文
摘要:void f(void) void f() 上面这两个是有区别的,在传统C中,后者表示参数未知,并不表示没有参数,前者代表没有参数 C语言里不允许函数嵌套定义,可以放另一个函数的声明,但不能放另一个函数的body
阅读全文
摘要:以以下一段代码为例: 1 #include <stdio.h> 2 //以下代码是否能交换两个变量的值? 3 void swap(int a,int b); 4 5 int main() 6 { 7 int a=5; 8 int b=6; 9 10 swap(a,b); 11 12 printf("
阅读全文
摘要:函数原型:函数头以分号;结尾,就构成了函数原型 函数原型的目的是告诉编译器这个函数长什么样:名称 参数(数量及类型) 返回类型 以下面一段代码为参考: 像这样把sum()写在上面是因为: C语言的编译器是从上往下执行代码的,当他看到 sum(1,10); sum(1,100);时,要知道sum()是
阅读全文
摘要:没有返回值的参数: void函数名不能使用带值的return,也可以没有return,调用的时候不能做返回值的赋值; 但是如果前面是int这类则需要返回一个对应的类型值,如果函数有返回值,则必须使用带值的return #include <stdio.h> //求最大值 //第一种书写方法(retur
阅读全文
摘要:什么是函数? 函数是一个代码块,接收零个或多个参数,做一件事情,并返回零个或一个值(通俗理解:函数就像一个大箱子,把具有相同功能的代码放进函数里,用的时候不用重复书写直接调用就可以了) #include <stdio.h> //注意:void里面不用return //void返回类型 sum函数名
阅读全文
摘要:关于 2<x<4 和 x>2&&x<4 的区别 #include <stdio.h> int main() { /* 表示x属于[2,4],书写方式不能是2<=x<=4,因为4<=x就是一个逻辑值了,检测的结果只能是1或者0 然后1或者0再去和4作比较,结果很有可能是错误的 */ int score
阅读全文
摘要:#include <stdio.h> int main() { // 字符和数字是不同的 char a=1; char b='1'; printf("%d\n",a); //1 printf("%d\n",b); //49 这个49是ASCII码 printf("%c\n",b); //'1' 输出
阅读全文
摘要:sizeof()是一个运算符,给出某个类型或变量在内存中所占据的字节数 sizeof(int)=sizeof(7) 因为sizeof只能测量int或者double。。。。的字节数,如果输入整数则和int同 类型有何不同? 自动类型转换 对于printf,任何小于int的类型会被转换成int;floa
阅读全文
摘要:while循环(计算用户输入的为几位数) #include <stdio.h> int main() { int x=0; int n=0; // 获取用户输入的值 printf("请输入任一整数\n"); scanf("%d",&x); //下面几行的作用是防止输入0时位数为0,所以先自增了,即使
阅读全文
摘要:计算身高 #include <stdio.h> int main() { //计算身高 //方法一: // printf("请输入身高的英寸和英尺"); // int foot; // int inch; // // scanf("%d %d",&foot,&inch); // // printf(
阅读全文