摘要:
用数组实现的字符串和用指针实现的字符串。 1、 #include <stdio.h> int main(void) { char str[] = "abc"; //数组实现的字符串,str为数组名,为指向数组起始元素的指针,相当于“a”的指针。 char *ptr = "123"; //指针实现的字 阅读全文
摘要:
1、 #include <stdio.h> void ary_set(int x[], int n, int val) { int i; for(i = 0; i < n; i++) { x[i] = val; } } int main(void) { int i; int a[5] = {1, 2 阅读全文
摘要:
1、 #include <stdio.h> void assign1(int x[], int n)//函数间数组的传递是以数组第一个元素的指针的形式传递的,因此形参变为指向数组第一个元素的指针,形参和数组本身的行为一样。 { int i; for(i = 0; i < n; i++) { x[i] 阅读全文
摘要:
1、函数间数组的传递是以指向第一个元素的指针的形式进行的,应为数组名会被解释为指向数组第一个元素的指针,形参部分的指针变量被赋值为数组的第一个元素 的指针时,指针变量指向数组的一个元素,因此指针变量的行为和传入的数组一样。 #include <stdio.h> void assign(int x[] 阅读全文
摘要:
对于数组a[n], 当p为数组的起始元素的指针时, 即 p = a = &a[0]时, p + i = a[i], &p[i] = &a[i] , a[i] = p[i], *(a + i) = *(p + i), 也就是说当p为数组的起始 元素的指针时,p的行为和数组本身是一样的。(原因: p为数 阅读全文
摘要:
当指针p声明为数组名a时, 则有 p + i = &a[i], 也就是说p + i是首个元素之后的第i个元素的指针。 1、 #include <stdio.h> int main(void) { int i; int a[5]; int *p = a; for(i = 0; i < 5; i++) 阅读全文
摘要:
1、三个值升序 #include <stdio.h> void swap(int *x, int *y) { int tmp = *x; *x = *y; *y = tmp; } void sort(int *i, int *j, int *k) { if(*i > *j) swap(i, j); 阅读全文
摘要:
1、如果小于0,修改为150, 大于100,修改为100 #include <stdio.h> void adjust(int *x) { if(*x < 0) *x = 150; //变量的值作为了下一个判断条件,如何避免? if(*x > 100) *x = 100; } int main(vo 阅读全文
摘要:
在c语言程序中,指针的一个重要作用就是作为函数的参数。 001:指针作为参数可以解决对传入到函数中的变量进行修改的目的。 如果要在函数中修改变量的值,就需要传入该变量的指针,然后再函数体中使用指针运算符,这样就获取了原始对象的别名,在函数体中对别名进行修改,就相当于对原始对象进行修改。 间接访问运算 阅读全文
摘要:
1、c语言中函数的参数 01、c语言中实参向形参的传递过程是单向传递的,在对形参进行修改后的值不能返回给实参。 02、函数返回调用源的返回值只能有一个。 例、求两个数的和与差。 #include <stdio.h> void sum_diff(int x, int y, int sum, int d 阅读全文