ここでの私の最初の質問。2D配列の代わりにポインターの配列を使用しています。ここで、要素を表示するために*(arr [i] + j)を使用できます。ここで、arrは配列iは行を示し、jは列を示します。ただし、同じ表記を使用して任意の要素に値を割り当てようとすると、コードが機能しなくなります。コンパイルエラーは発生しませんが、実行すると動作を停止します。誰か助けてもらえますか?
これが私のコードです
#include <stdio.h>
#include <conio.h>
#include <string.h>
#include <stdlib.h>
int main(void)
{
int i,j,k;
char temp2, temp, *arr[] = {
"Brinda Roy",
"Rakesh Bai",
"Neha Saxen",
"Ankit Jain"};
printf("%c",*(arr[3]+8));
for(i=0;i<4;i++){
for(j=0, k=9; j<=4, k>=5; j++, k--){
temp =*(arr[i]+j);
*(arr[i]+j)=*(arr[i]+k);
*(arr[i]+k)=temp;
}
}
printf("\nThe array is ");
for(i=0; i<4; i++){
printf("\n%s",arr[i]);
}
getch();
return 0;
}