Краткое java-решение:
import java.util.Arrays;
public class Combination {
public static void main(String[] args){
String[] arr = {"A","B","C","D","E","F"};
combinations2(arr, 3, 0, new String[3]);
}
static void combinations2(String[] arr, int len, int startPosition, String[] result){
if (len == 0){
System.out.println(Arrays.toString(result));
return;
}
for (int i = startPosition; i <= arr.length-len; i++){
result[result.length - len] = arr[i];
combinations2(arr, len-1, i+1, result);
}
}
}
Результат будет
[A, B, C]
[A, B, D]
[A, B, E]
[A, B, F]
[A, C, D]
[A, C, E]
[A, C, F]
[A, D, E]
[A, D, F]
[A, E, F]
[B, C, D]
[B, C, E]
[B, C, F]
[B, D, E]
[B, D, F]
[B, E, F]
[C, D, E]
[C, D, F]
[C, E, F]
[D, E, F]
Я набирал список функций, но заметил, что на странице Википедии на C1X есть довольно полный список всех предлагаемых изменений.
Рабочая группа ISO C размещает рассылки «после встречи» на своем веб-сайте . Один из наиболее интересных - это Отчет редактора .
Вот краткое изложение со страницы Википедии:
_Align
спецификатор, оператор alignof
, align_alloc
функция ) _Thread_local
спецификатор класса хранения,
заголовок, включая функции создания / управления потоками, мьютекс, переменную условия и функции хранения для конкретного потока) char16_t
и char32_t
для хранения данных в кодировке UTF-16 / UTF-32, включая соответствующие префиксы строковых литералов u и U и функции преобразования в
) gets
Вероятно, лучшим местом для поиска текущего статуса было бы посмотреть на последний проект новой версии стандарта C. Предупреждение: хотя он поступает напрямую от комитета, сервер, стоящий за этой ссылкой, не всегда самый отзывчивый ...