Я только начал изучать C.
void function(char *str1, char *str2) {
printf("%p\n", str1);
printf("%p\n", str2);
str1++; //*str++;
str2++; //*str++;
printf("%p\n", str1);
printf("%p\n", str2);
}
int main(int argc, char *argv[]) {
function(argv[1], argv[2]);
return 0;
}
, если argv[1]
"базовый" argv[2]
это "программный";
, когда я заменяю код частью комментарияэто дало бы тот же самый результат, который "a" "r"
;но если я скомпилирую его с флагом -Werror
, он выдаст «предупреждение: вычисленное значение не используется»
В чем разница между str1++
и *str1++;
?
каков код, если я хочу увеличить символ, на который он указывает, до
для строки: function(argv[1], argv[2]);
здесь argv[1]
и agrv[2]
, которые я передаюфункция, они указатели или они массив? что такое *argv[1]
и *argv[2]