B
Bgag
Hallo!
Ich bin leider ein absoluter C Neuling und versuche nun schon seit längerem vergeblich mit Hilfe einer Funktion die Werte in einem übergebenen Array zu ändern. Das müsste ja über Pointer möglich sein, jedoch will es mir nicht gelingen. Wäre nett, wenn sich mal jemand meinen Quellcode ansehen könnte.
MfG, Andy
//EDIT: Einen Teil des Problems konnte ich nun lösen, jedoch erhalte ich beim Ausführen des Programms immer Segmentation fault.
Ich bin leider ein absoluter C Neuling und versuche nun schon seit längerem vergeblich mit Hilfe einer Funktion die Werte in einem übergebenen Array zu ändern. Das müsste ja über Pointer möglich sein, jedoch will es mir nicht gelingen. Wäre nett, wenn sich mal jemand meinen Quellcode ansehen könnte.
MfG, Andy
//EDIT: Einen Teil des Problems konnte ich nun lösen, jedoch erhalte ich beim Ausführen des Programms immer Segmentation fault.
C:
/* The first c programm "hello world!" */
#include <stdio.h>
#include <string.h>
/* the main method */
int main(void)
{
/* load the chess field */
char field[8][8];
/* fill chess field */
create(field);
/* init counter */
short i, j;
/* loop over all field columns */
for(i=0; i<8; i++)
{
/* loop over all field rows */
for(j=0; j<8; j++)
{
printf("%s", field[j][i]);
}
}
return 0;
}
int create( char (*field)[8] )
{
/* init counter */
register short i, j;
/* loop over all field columns */
for(i=0; i<8; i++)
{
/* loop over all field rows */
for(j=0; j<8; j++)
{
if(j==1)
{
field[j][i] = 'b';
}
else if(j==6)
{
field[j][i] = 'B';
}
else if(j==0)
{
switch(i)
{
case 0:
field[j][i] = 'T';
break;
case 1:
field[j][i] = 'S';
break;
case 2:
field[j][i] = 'L';
break;
case 3:
field[j][i] = 'D';
break;
case 4:
field[j][i] = 'K';
break;
case 5:
field[j][i] = 'L';
break;
case 6:
field[j][i] = 'S';
break;
case 7:
field[j][i] = 'T';
break;
default:
break;
}
}
else if(j==7)
{
switch(i)
{
case 0:
field[j][i] = 't';
break;
case 1:
field[j][i] = 's';
break;
case 2:
field[j][i] = 'l';
break;
case 3:
field[j][i] = 'd';
break;
case 4:
field[j][i] = 'k';
break;
case 5:
field[j][i] = 'l';
break;
case 6:
field[j][i] = 's';
break;
case 7:
field[j][i] = 't';
break;
default:
break;
}
}
else
{
field[j][i] = '*';
}
}
}
return;
}
Zuletzt bearbeitet von einem Moderator: