对char数组使用'sort'(C++)

Har*_*rma 8 c++ arrays sorting

是否可以使用'algorithm'中定义的'sort'根据ASCII值对char数组进行排序?如果是,请举例.

Naw*_*waz 8

是.这绝对是可能的.你可以通过编写一些示例代码来知道,例如:

char charArray[] = {'A','Z', 'K', 'L' };

size_t arraySize = sizeof(charArray)/sizeof(*charArray);

std::sort(charArray, charArray+arraySize);

//print charArray : it will print all chars in ascending order.
Run Code Online (Sandbox Code Playgroud)

顺便说一句,你应该避免使用c风格的数组,并且应该更喜欢使用std::arraystd::vector.

std::array当您在编译时知道大小时std::vector使用,而在需要动态数组时使用,而动态数组的大小将在运行时知道.


Oli*_*rth 5

是:

char array[] = "zabgqkzg";

std::sort(array, array+sizeof(array));
Run Code Online (Sandbox Code Playgroud)

有关工作演示,请参见http://ideone.com/0TkfDn.