読みやすいコードの書き方【C言語】

読みやすいコードの書き方


▷配列の初期化

const char ltr[] = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
            "abcdefghijklmnopqrstuvwxyz";

2つの文字列リテラルが与えられているように見えるが、改行・空白・タブなどのスペースをはさんで並べられた文字列リテラルは連結される。

この配列ltrに与えられている初期化子は、

”ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz”

という単一の文字列リテラルとなる。
2行に分けて書いたほうがわかりやすい。


▷内容ごとにまとめる

MovableArea get_movable_area_pwn(GameState game_state, BoardPoint board_point, Cell cell) {
  MovableArea movable_area;
  //白と黒で違う部分
  int dir = (cell.side == WHT ? -1 : +1);		
  int start_y = (cell.side == WHT ? 6 : 1);	

  int move_num = 1;
  int i;

  //白と黒で共通の部分
  if (board_point.y == start_y) {
    move_num = 2;
    //first_move = 1;
  }

  movable_area.selected_piece_point = board_point;
  movable_area.movable_point_num = move_num;
  movable_area.movable_points = (BoardPoint*)malloc(sizeof(BoardPoint) * move_num);

  for (i = 0; i < move_num; i++) {
    movable_area.movable_points[i].x = board_point.x;
    movable_area.movable_points[i].y = board_point.y + dir * (i + 1);
 
  return movable_area;

コードの内容ごとにまとめて書く。
共通部分を書く範囲、異なる部分を書く範囲・・・等、見やすくわかりやすい書き方をする。

コメントを残す

あなたのメールアドレスは公開されません。必須項目には印がついています *