C++ 中的以下类似语句之间有区别吗?

Is there a difference between the following similar statements in c++?

本文关键字:之间 语句 有区别 C++      更新时间:2023-10-16

group one:

char *pt[10]={}
char  pt[10]={}

第二组:

char* pt
char  *pt

上述群体之间的区别在哪里?哪个是首选?

  • char *pt[10]={}是指向char的指针数组
  • char pt[10]={}是一组char

在第二组中...

char* ptchar *pt 之间没有区别,但为了可读性和避免混淆,您可能最好使用 char *pt 。 它们都创建指向char的单个指针。 但是,请考虑以下事项:

char* pt, c;

在这种情况下,pt是指向char的指针,而c只是一个正则char变量。 char*不会使每个后续变量都成为char pointer。 因此,正如我所说,为了可读性和避免混淆自己,以下内容可能更好:

char *pt, c;

这与上面的例子在实际完成方面是相同的,但很难将其误解为两个指针。 尽管老实说,最佳做法可能是在单独的行上声明它们。