当前位置:首页 > 编程开发

C语言中swap问题

webgou16年前 (2010-09-02)编程开发198
这道题问题关键在于理解:指针 要交换的是str1与str2的指针 却交换了str1与str2 [CODE_LITE] #include void swap(char *p1, char *p2); int main(void) { char str1[100]="This is my String."; char str2[100]="Another String."; char *p1=str1; char *p2=str2; printf("1---Address:p1=%p,p2=%p\n",p1,p2); printf("Before swap:\np1:%s\np2:%s\n",p1,p2); swap(p1,p2); printf("4---Address:p1=%p,p2=%p\n",p1,p2); printf("After swap:\np1:%s\np2:%s\n",p1,p2); getchar(); return 0; } void swap(char *p1, char *p2) { char *pt=p1; p1 = p2; p2 = pt; } 1---Address:p1=0x22ccc0,p2=0x22cc50 Before swap: p1:This is my String. p2:Another String. 4---Address:p1=0x22ccc0,p2=0x22cc50 After swap: p1:This is my String. p2:Another String [/CODE_LITE]

扫描二维码推送至手机访问。

版权声明:本文由知了博客发布,如需转载请注明出处。

本文链接:https://www.webgou.info/?id=309

分享给朋友:

“C语言中swap问题” 的相关文章

win7下搭建pomelo方法

 笔者在win7(64位)下搭建pomelo尝尽苦头,网上说的vs2010. node 0.10.x几都试过了,没有成功,只能一步一步的尝试,终于功德圆满,不敢独享,共用之。 ...…

Android录音失真具体解决方案

在6410+WM9714的Android平台上测试MIC IN录音功能,出现一个BUG。在该平台声音播放是完全正常的,但是录音后再播放刚录的声音,会有失真,同样的录音文件在电脑上播放也一样,说明是 Android录音失真的问题。后来通过打印9714的寄存器,发现录音频率是8000HZ,放音频率是4…

WinCE下自定义Shell的方法

考虑到产品外观及风格的一致性,无法直接把Explorer作为Shell,而且,又无简单的把Explorer直接放到后台(会出现一些问题,譬如启动的瞬间,Explorer会显示一下)方法:1. 直接修改Explorer,改为自己的风格。个人认为这是最根本最有效的方法,但是工作量比较大,考虑到时间只能放…

eclipse插件的三种安装方法

1、将插件直接拷贝到eclipse的plugins(有时候还包括features)目录下,然后重启一下eclipse,在eclipse的插件库中 (--˃Help-˃SoftWare Updates-˃Manager Configuration)就可以找到。重启的时候可以清除一下eclipse的缓存…

关于wince OS开发面试问题的总结系列之OAL

关于wince OS开发面试问题的总结系列之OAL…

关于GetDIBits函数的使用问题

最近在编程的时候需要获取位图的二进制数据, 在使用GetDIBits函数的时候发现一个古怪的问题, 虽然解决了其中的问题, 但是没有找到其中的原因.这里描述一些遇到的问题.第一次:为了从位图句柄得到数据, 创建了内存设备描述句柄, 而后根据MSDN描述, 两次调用GetDIBits函数, 第一次得到…

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。