VC++菜鸟问题,求各位帮忙。
#include "stdafx.h" #include<iostream.h>
void main() { char a[5]="abcd",*p; p=&a[1]; cout<<p<<endl; } 我感觉上面的代码应该显示字符串中“b”字符的内存地址(赋值时偶用了取地址符号 &),可为什么会显示 bcd ?
#include "stdafx.h" #include<iostream.h>
void main() { char t[5]="abcd",*p; p=t; cout<<p<<endl; } 显示输出 abcd ,好象可以把一个字符数组直接赋给字符型指针变量。 #include "stdafx.h" #include<iostream.h>
void main() { int i=10,*p; p=i; //出错!必须加上取地址符 & cout<<p<<endl; } int 类型 就不可以。 为什么会这样? 如果我想获取单个字符的内存地址,该怎么办?
[此贴子已经被作者于2005-3-26 16:33:36编辑过]