看看你们的基础怎么样

king_2000 2006-07-06 12:06:05
请说出 int (*p)[4] 和 int *p[4] 的区别,它们在内存中是怎么排布的,怎样申请内存及初始化。还有个题目,a,b两个变量,怎样不用第三个变量就能交换a,b的数值
...全文
205 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
element_cn 2006-09-01
  • 打赏
  • 举报
回复
a=a+b

b=a-b

a=a-b
Fshx 2006-09-01
  • 打赏
  • 举报
回复
int (*p)[4]为指向数组的指针 数组含有4个int型元素
int *p[4]为指针数组 数组含有4个int*型元素

a=a+b
b=a-b
a=a-b
king_2000 2006-09-01
  • 打赏
  • 举报
回复
diandian82 2006-07-06
  • 打赏
  • 举报
回复
2.
a=a^b;
b=a^b;
a=a^b;
wanderfox 2006-07-06
  • 打赏
  • 举报
回复
搜一下以前的贴子,有相关的
lyskyly 2006-07-06
  • 打赏
  • 举报
回复
int (*p)[4]相当于一个指向这种二维数组的指针
a[][4]列为4
int *p[4]相当于一个放指针的数组
#include<iostream>
using namespace std;

int main()
{
const int SIZE =2;
int (*p)[4];
p = (int (*)[4])(new int[SIZE*4]);
//or int a[2][4];
//p = a;
int *q[4];
for(int i = 0;i<4;i++)
{
q[i] = new int[i+1];
}
for(int i=0;i<4;i++)
{
delete []q[i];
}
delete [](int*)p;
}

stecdeng 2006-07-06
  • 打赏
  • 举报
回复
指针的话 我也不擅长
A B无第三变量交换 可以这样处理

a=a+b

b=a-b

a=a-b

64,681

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧