Я путаюсь, какой синтаксис использовать, если я хочу передать массив известного или неизвестного размера в качестве параметра функции.
Предположим, что у меня есть эти варианты для этой цели:
void func1(char* str) {
//print str
}
void func2(char str[]) {
//print str
}
void func3(char str[10]) {
//print str
}
Каковы преимущества и недостатки использования каждого из них?