一道“简单”的难题

   在c++实验报告上惊人的发现一个很有趣的程序,问遍了度娘,好不容易得到答案今天竟然忘记了。不过今天问一c++大牛(即将步入金山),果然不记得了。好吧,废话不多说,分享一下它的美妙吧!

 1 #include<iostream.h>
 2 void main(void)
 3 {
 4     int *p1;
 5     float *fp1,(*p)[10];
 6     char *cp1;
 7     p1=new int;
 8     fp1=           ①          ;
 9     p=           ②          ;
10     cp1=new char;
11     *cp1='A';
12     for(int i=0;i<10;i++)
13              ③          ;
14     for(i=0;i<10;i++){
15         cout<<"(*p)["<<i<<"]="<<(*p)[i]<<'\t';
16         if((i+1)%5==0)cout<<'\n';
17     }    
18     *p1=25;
19     cout<<"*p1="<<*p1<<'\n';
20     cout<<"*fp1="<<*fp1<<'\n';
21     cout<<"*cp="<<*cp1<<'\n';
22     delete p1;
23     delete fp1;
24     delete cp1;
25               ④          ;
26 }

1. new char;

2 难倒一大片:答案竟然是 float(*)[10] new float[10]; 雷人吧~!

3 (*p)[i] = i

4 delete []p;

ok搞定留个记录吧!好久没有记录这么经典的东西了。

原文地址:https://www.cnblogs.com/yuelingzhi/p/2783344.html