鱼C论坛

 找回密码
 立即注册
查看: 2346|回复: 9

[已解决]请前辈指点, C指针的取址&和取值*

[复制链接]
发表于 2018-6-21 14:22:45 | 显示全部楼层 |阅读模式
10鱼币
本帖最后由 wow7jiao 于 2018-6-21 14:27 编辑

我现在正在学习《小甲鱼老师的带你学C带你飞》,21课到24课,我发现取址&和取值*,普通常量,一维数组,二维数组里面表示都不一样,不是和逻辑关系一一对应的,现在归纳不了拉,看了C和指针也还没理解,不知道什么时候恰当使用*和&了。
想请前辈指点我学习C指针方式,一,是死记不同* 和 &用法,不死钻牛角尖了;还是继续死磕*和&比较好。
最佳答案
2018-6-21 14:22:46
想要深入理解C语言,汇编语言是必须的,尤其是理解指针部分

最佳答案

查看完整内容

想要深入理解C语言,汇编语言是必须的,尤其是理解指针部分
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2018-6-21 14:22:46 | 显示全部楼层    本楼为最佳答案   
想要深入理解C语言,汇编语言是必须的,尤其是理解指针部分
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2018-6-21 14:24:25 | 显示全部楼层
初学者容易绕晕也正常,多写代码多试错,多看看别人代码怎么用的,熟悉了以后就好多了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2018-6-21 14:34:54 | 显示全部楼层
你是想把 《带你学C带你飞》这个系列学完就学好C语言吗?
你错了,这是不可能的
先把这个系列学完,之后学习汇编语言
之后带着汇编语言重新学一次C语言
然后看好多关于C语言的书,带着汇编语言看这些书(例如 C和指针之类的)

目前继续往后学就行了,不要死磕指针,听说指针是C语言的重点也是难点,这是真的吗?
如果是,那么你认为就以你目前的学识能够掌握吗?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2018-6-21 14:48:30 | 显示全部楼层
本帖最后由 wow7jiao 于 2018-6-21 15:05 编辑
人造人 发表于 2018-6-21 14:36
想要深入理解C语言,汇编语言是必须的,尤其是理解指针部分


我已经看完了2遍王爽 汇编,题目也作完了,随便问一下你那个反汇编的软件是什么? 王爽版本的汇编语法是intel格式的,linux是AT&T 格式。
AT&T 格式

Intel 格式


pushl %eax

push eax


其实我用看过小甲鱼老师OD的反汇编,但是OD好像过时了,我现在一直没搞明白您用的什么反汇编,在什么平台下,用了虚拟机吗?

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2018-6-21 15:11:50 | 显示全部楼层
wow7jiao 发表于 2018-6-21 14:48
我已经看完了2遍王爽 汇编,题目也作完了,随便问一下你那个反汇编的软件是什么? 王爽版本的汇编语法 ...

哪个?
给个链接
截个图也可以
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2018-6-21 15:13:06 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2018-6-21 15:18:06 | 显示全部楼层
[img][/img]
213655binnfnkc7wc8ckhc.png
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2018-6-21 15:22:59 | 显示全部楼层
vs2017
1.png
2.png
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2018-6-21 15:25:15 | 显示全部楼层
学过汇编语言就好说了
能看懂这个吗?
#include <stdio.h>

int main(void)
{
010BF840  push        ebp  
010BF841  mov         ebp,esp  
010BF843  sub         esp,0D8h  
010BF849  push        ebx  
010BF84A  push        esi  
010BF84B  push        edi  
010BF84C  lea         edi,[ebp+FFFFFF28h]  
010BF852  mov         ecx,36h  
010BF857  mov         eax,0CCCCCCCCh  
010BF85C  rep stos    dword ptr es:[edi]  
        int a = 100;
010BF85E  mov         dword ptr [ebp-8],64h  
        int *p = &a;
010BF865  lea         eax,[ebp-8]  
010BF868  mov         dword ptr [ebp-14h],eax  

        printf("%d\n", *p);
010BF86B  mov         eax,dword ptr [ebp-14h]  
010BF86E  mov         ecx,dword ptr [eax]  
010BF870  push        ecx  
010BF871  push        1153E50h  
010BF876  call        010BBD9B  
010BF87B  add         esp,8  
        return 0;
010BF87E  xor         eax,eax  
}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-1-18 14:53

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表