鱼C论坛

 找回密码
 立即注册
查看: 572|回复: 15

[已解决]c语言指针问题 求助

[复制链接]
发表于 2020-7-13 21:36:15 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
#include<stdio.h>
#include<string.h>
void main()
{
      char str[]="CHINA";
          char *c;
        c=str;
        printf("%p %p \n",str,c);
       
}       
为什么 c=str 而不是*c=str
最佳答案
2020-7-13 21:37:03
赋值指针字符串时 不需要用 星号(“*”)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-7-13 21:37:03 | 显示全部楼层    本楼为最佳答案   
赋值指针字符串时 不需要用 星号(“*”)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-7-13 21:38:47 | 显示全部楼层
指针字符串

赋值时无需*


如果帮到你了,设置最佳可好
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-7-13 22:26:04 | 显示全部楼层
因为 str 本身是个数组,可以直接转成指针,不必须取地址。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-7-14 00:26:17 | 显示全部楼层
永恒的蓝色梦想 发表于 2020-7-13 22:26
因为 str 本身是个数组,可以直接转成指针,不必须取地址。

请问一下 原理是不是因为 str是数组 不需要用&符号 而且*a是取值 a才是取地址 char *a和*a不是同一个意思
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-7-14 00:28:59 | 显示全部楼层
liuzhengyuan 发表于 2020-7-13 21:37
赋值指针字符串时 不需要用 星号(“*”)

请问一下 原理是不是因为 str是数组 不需要用&符号 而且*a是取值 a才是取地址 char *a和*a不是同一个意思
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-7-14 11:53:47 | 显示全部楼层
有梦想大蜗牛 发表于 2020-7-14 00:26
请问一下 原理是不是因为 str是数组 不需要用&符号 而且*a是取值 a才是取地址 char *a和*a不是同一个意思

对的。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-7-14 18:58:44 | 显示全部楼层

#include<stdio.h>
void main()
{
        int a[10]={1,2,3,4,5,6,7,8,9,10};
        int *k=a;
        for(;k<a+10;k++)
   {
      printf("%d",*k);
   }
}
大佬能 解释一下 k<a+10是什么意思吗??
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-7-14 18:59:42 | 显示全部楼层


k 小于 a+10
小学数学就讲过了吧
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-7-14 19:30:03 | 显示全部楼层
永恒的蓝色梦想 发表于 2020-7-14 18:59
k 小于 a+10
小学数学就讲过了吧

emmm 我在想K不是地址嘛 地址还能小于地址吗
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-7-14 19:39:38 | 显示全部楼层
有梦想大蜗牛 发表于 2020-7-14 19:30
emmm 我在想K不是地址嘛 地址还能小于地址吗

地址就是一个数……
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-7-14 19:48:30 | 显示全部楼层
liuzhengyuan 发表于 2020-7-13 21:37
赋值指针字符串时 不需要用 星号(“*”)

大佬 请问这里哪错了
#include<stdio.h>

void main()
{
        int a[10]={1,2,3,4,5,6,7,8,10,9};
        void zh(int *a);
        zh(a);
}
void zh(int *a)
{
   
        int *max;
   int *min;
   max=min=a;
   int i=0;
   for(;i<10;i++)
   {
      if(*(a+i)>*max)
                *max=*(a+i);
          else if(*(a+i)<*min)
                *min=*(a+i);
   }
   printf("%d %d",*min,*max);
}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-7-14 19:50:39 | 显示全部楼层
本帖最后由 liuzhengyuan 于 2020-7-14 19:54 编辑
有梦想大蜗牛 发表于 2020-7-14 19:48
大佬 请问这里哪错了
#include


赋值时 max min 加上 星号 试试?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-7-14 19:58:03 | 显示全部楼层
liuzhengyuan 发表于 2020-7-14 19:50
赋值时 max min 加上 星号 试试?

不行哈 max和min存的是地址
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-7-14 20:00:17 | 显示全部楼层
有梦想大蜗牛 发表于 2020-7-14 19:58
不行哈 max和min存的是地址

你的程序目的是什么
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-7-14 20:03:21 | 显示全部楼层
liuzhengyuan 发表于 2020-7-14 20:00
你的程序目的是什么

求最大值和最小值
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-4-28 06:45

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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