将c char指针复制到非指针char

时间:2011-05-11 22:45:17

标签: c++ pointers char

这样做有什么问题吗?

char* field = new char[2];
field[0] = 'S';
field[1] = '\0';

char c = *field;

将始终等于'S'?

4 个答案:

答案 0 :(得分:4)

没问题,c总是'S'。

答案 1 :(得分:2)

这完全没问题 - 而c总是等于'S'。取消引用field,类型为char的指针将生成char

答案 2 :(得分:0)

有一个问题是new char[2]不是C语法。但总体思路是正确的:c将永远是'S'。

答案 3 :(得分:0)

这没什么不对。取消引用行

中的字段数组时
char c = *field;

你实际要问的是数组的第一个元素的值,在本例中是'S'。