水边的小姑娘 发表于 2022-9-11 11:49:04

程序没有被正常执行

本帖最后由 水边的小姑娘 于 2022-9-11 11:50 编辑

#include <stdio.h>
#define MAX 256

void main ()
{
        char str;
        int i,j;
        char (*p);

        printf ("please input a str:");
        fgets (str,MAX,stdin);

        (*p) = (char (*))&str;

        for (i = 0;i<3;i++)
        {
                for (j = 0;j<3;j++)
                {
                        printf ("%p ",*(*(p+i)+j));
                }
                printf ("\n");
        }
}
本意是想用指针实现这个QWQ

jackz007 发表于 2022-9-11 12:12:59

本帖最后由 jackz007 于 2022-9-11 12:14 编辑

#include <stdio.h>
#define MAX 256

int main(void)
{
      char str , (* p)      ;
      int i , j                     ;

      p = (char (*)) str         ;
      printf ("please input a str:");
      fgets (str , MAX , stdin)       ;

      for (i = 0 ; i < 3 ; i ++)
      {
                for(j = 0 ; j < 3 ; j ++)
                {
                        printf ("%c " , * ( * (p + i) + j));// 格式描述符 %c 用于显示字符,%p 用于显示指针数值
                }
                printf ("\n");
      }
}
      编译、运行实况:
D:\\C>g++ -o x x.c

D:\\C>x
please input a str:123456789
1 2 3
4 5 6
7 8 9

D:\\C>

zhangjinxuan 发表于 2022-9-11 12:47:39

楼上是正确的

水边的小姑娘 发表于 2022-9-11 13:00:42

jackz007 发表于 2022-9-11 12:12
编译、运行实况:

明白了,蟹蟹!
对p赋值那一步和后面的格式化输出我搞错了。
页: [1]
查看完整版本: 程序没有被正常执行