Я новичок в указателях. после завершения целочисленных массивов и указателей я смещен в массивы символов и указатели. я ожидал тех же результатов, но это было странно.символьные массивы и указатели основные путаницы
int main() {
char chararray[20]="Char Array";
void printarray(char *);
void printarraydirect(char *);
printf("Passing chararray to funtion printarray\n");
printarray(chararray);
printf("Printing directly as c in printarraydirect function");
printarraydirect(chararray);
return 0;
}
void printarray(char *c){
int i=0;
//while(c[i]!= ' ')-----------------------> checks for empty space
while(c[i]!='\0')
{
printf("%c",c[i]);
i++;
}
printf("\n");
}
void printarraydirect(char * c){
printf("Printing c-------------->");
printf("%s\n",c);
int i=0;
printf("Printing c[i]-------------->\n");
// shows error here , if so why didnt it show me error in printarray function. and why didnt it print the whole array when printed c in printarray function..
printf("%s\n" c[i]);
}
Вы определяете свою функцию внутри 'main()'? Зачем? –
'printf ("% s \ n "c [i]);' не то же самое, что 'printf ("% c ", c [i]);' –
последней строке должно быть 'printf ("% c \ n "c [i]);', потому что это только один символ. – Himanshu