ページ 1 / 1
コーディングスタイル
Posted: 15/03/29(日) 16:18
by Endeavor_wako
C言語において、僕は次のように書いてます。
コード: 全て選択
unsigned int hogehoge( int fugafuga, int piyopiyo )
{
if( ※中略
}
しかし、次のように書くのが普通だ、との指摘を受けました。
コード: 全て選択
unsigned int
hogehoge( int fugafuga, int piyopiyo )
{
if( ※中略
}
これのメリットがどこにあるのか判らん。詳しい方、コメントください。
Re: コーディングスタイル
Posted: 15/03/29(日) 20:29
by タロ兵衛
私は、多分初めて見ます
どこにメリットがあるか考えましたが、思いつくところがありません。
強いて言うなら、長くなった1行をどこで切るかを、関数の型の部分で切ることで、
短く出来る・・・ぐらいでしょうか。
(最近は構造体を戻り値とする場合が多いから)
行長を短くするなら、引数を次の行に書く例はよく見ますけどね・・・
コード: 全て選択
unsigned int hogehoge(
int fugafuga,
int piyopiyo )
{
if( ※中略
}
「何かが良いから」ではなくて、そのプロジェクトの「コーディング規約」なのでは?
私の場合、鬼のように長くても、一行に書いてます。
grepしたときに、一発で引数の渡し方がわかるので。
でも、ふつうは鬼のように長くはなりません。
なるとしたら、それは設計が悪いと考え直して、関数仕様を変更してしまうからです

Re: コーディングスタイル
Posted: 15/03/30(月) 13:39
by Endeavor_wako
タロ兵衛 さんが書きました:grepしたときに、一発で引数の渡し方がわかるので。
プロトタイプ宣言をまとめたりする時、都合いいですよね。
相手方に訊いても「とにかく改めてください」的な返事しかなかったので大した理由があるようにも思えないのです。
しかし、Cに似た文法の言語はゴマンとあるので、その辺からのフィードバックなのかなあ、とも。前述のプロトタイプも元はC++からの借り物だし。
書き出しだけ指示どおりにして、中身を次にように書いて溜飲を下げようか、とも。
piyo.h
コード: 全て選択
int a,b,c,d,e,f,g,h,i,j,k;
main.c
コード: 全て選択
#include <stdio.h>
#include "piyo.h"
unsigned int
hoge( void )
{
if( a == 0 ){
printf( "hoge\n" );}
else{
printf( "fuga\n" );
b+=1;}
while( c < 0 ){
if( c == -1 ){
break;}
c -= 2;}if(c == -1){;}
else{
printf( "piyo\n" );}}
日頃はほとんど「へび使い」なので。実際にやると切られそうなのでやりませんけど。そもそも、ライブラリ(ヘッダファイル)指定されるので、宣言の隠蔽は難しいし。
引き続き情報もとむ。他にこんな書き方がある、これは合理的だ、というのもあれば教えてくださいませ。