有梦想大蜗牛 发表于 2020-7-13 21:36:15

c语言指针问题 求助

#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

liuzhengyuan 发表于 2020-7-13 21:37:03

赋值指针字符串时 不需要用 星号(“*”)

Hello. 发表于 2020-7-13 21:38:47

指针字符串

赋值时无需*

如果帮到你了,设置最佳可好{:10_297:}

永恒的蓝色梦想 发表于 2020-7-13 22:26:04

因为 str 本身是个数组,可以直接转成指针,不必须取地址。

有梦想大蜗牛 发表于 2020-7-14 00:26:17

永恒的蓝色梦想 发表于 2020-7-13 22:26
因为 str 本身是个数组,可以直接转成指针,不必须取地址。

请问一下 原理是不是因为 str是数组 不需要用&符号 而且*a是取值 a才是取地址 char *a和*a不是同一个意思

有梦想大蜗牛 发表于 2020-7-14 00:28:59

liuzhengyuan 发表于 2020-7-13 21:37
赋值指针字符串时 不需要用 星号(“*”)

请问一下 原理是不是因为 str是数组 不需要用&符号 而且*a是取值 a才是取地址 char *a和*a不是同一个意思

永恒的蓝色梦想 发表于 2020-7-14 11:53:47

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

对的。

有梦想大蜗牛 发表于 2020-7-14 18:58:44

永恒的蓝色梦想 发表于 2020-7-14 11:53
对的。

#include<stdio.h>
void main()
{
        int a={1,2,3,4,5,6,7,8,9,10};
      int *k=a;
        for(;k<a+10;k++)
   {
      printf("%d",*k);
   }
}
大佬能 解释一下 k<a+10是什么意思吗??

永恒的蓝色梦想 发表于 2020-7-14 18:59:42

有梦想大蜗牛 发表于 2020-7-14 18:58
#include
void main()
{


k 小于 a+10
小学数学就讲过了吧{:10_277:}

有梦想大蜗牛 发表于 2020-7-14 19:30:03

永恒的蓝色梦想 发表于 2020-7-14 18:59
k 小于 a+10
小学数学就讲过了吧

emmm 我在想K不是地址嘛 地址还能小于地址吗

永恒的蓝色梦想 发表于 2020-7-14 19:39:38

有梦想大蜗牛 发表于 2020-7-14 19:30
emmm 我在想K不是地址嘛 地址还能小于地址吗

地址就是一个数……

有梦想大蜗牛 发表于 2020-7-14 19:48:30

liuzhengyuan 发表于 2020-7-13 21:37
赋值指针字符串时 不需要用 星号(“*”)

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

void main()
{
        int a={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);
}

liuzhengyuan 发表于 2020-7-14 19:50:39

本帖最后由 liuzhengyuan 于 2020-7-14 19:54 编辑

有梦想大蜗牛 发表于 2020-7-14 19:48
大佬 请问这里哪错了
#include



赋值时 max min 加上 星号 试试?

有梦想大蜗牛 发表于 2020-7-14 19:58:03

liuzhengyuan 发表于 2020-7-14 19:50
赋值时 max min 加上 星号 试试?

不行哈 max和min存的是地址

liuzhengyuan 发表于 2020-7-14 20:00:17

有梦想大蜗牛 发表于 2020-7-14 19:58
不行哈 max和min存的是地址

你的程序目的是什么

有梦想大蜗牛 发表于 2020-7-14 20:03:21

liuzhengyuan 发表于 2020-7-14 20:00
你的程序目的是什么

求最大值和最小值
页: [1]
查看完整版本: c语言指针问题 求助