首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

指针都要初始化吗,该怎么解决

2012-03-09 
指针都要初始化吗比如void swap(int *x,int *y){int aa*x*x*y*ya}这个交换函数里指针不都没初始化

指针都要初始化吗
比如
void swap(int *x,int *y)
{
  int a;
  a=*x;
  *x=*y;
  *y=a;
}
这个交换函数里指针不都没初始化嘛

[解决办法]

探讨
那我写的那个程序里,到底有没有对指针初始化

[解决办法]
C/C++ code
int a=21,b=25;int *p = &a;int *q = &b;swap(p,q);
[解决办法]
调用函数的时候传递指针,不就相当于初始化了吗。
[解决办法]
你在调用该函数的时候就有地址传进来嘛,这样就对指针赋值了啥
[解决办法]
这个是函数传进来的参数,怎么能在函数里初始化呢。lz理解错了,应该是在定义指针的时候初始化,现在是在调用的时候,这个参数是从外边传来的,在传进来的时候必须是合理值,初始化后的啊
[解决办法]
C/C++ code
void main(){ int n0=5,n1=6; swap(&n0,&n1); // 用n0的地址初始化x,n1的地址初始化y}
[解决办法]
swap 函数里的形参通过实参传地址过来了,

结果将两个指针指向的数值交换。
C/C++ code
#include <stdio.h> void swap(int *x,int *y) {   int a;   a=*x;   *x=*y;   *y=a; } void main() {    int *pn, *pm;     int i = 100;    int j = 33;    pn = &i;    pm = &j;    printf("%d, %d\n", *pn, *pm);    swap(pn, pm);     printf("%d, %d", *pn, *pm);    }
[解决办法]

热点排行