[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 2chのread.cgiへ]
Update time : 08/03 08:01 / Filesize : 138 KB / Number-of Response : 658
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

C言語なら俺に聞け(入門編)Part 100



1 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/03/30(金) 21:01:32.89 ]
C言語の入門者向け解説スレッドです。

★前スレ
C言語なら俺に聞け(入門編)Part 99
toro.2ch.net/test/read.cgi/tech/1331786500/
★過去スレ
makimo.to:8000/cgi-bin/search/search.cgi?q=%82b%8C%BE%8C%EA%82%C8%82%E7%89%B4%82%C9%95%B7%82%AF&andor=AND&sf=0&H=&view=table&D=tech&shw=5000
★教えて欲しいのではなく宿題を丸投げしたいだけなら
  ↓宿題スレ↓へ行ってください。
C/C++の宿題片付けます 156代目
toro.2ch.net/test/read.cgi/tech/1328276597/
★C++言語については避けてください。C++対応明記スレへどうぞ
★分からない事をなるべく詳しく書いて下さい。
★ソースコードを晒すと答えやすくなるかもしれません。
  # 抜粋/整形厳禁、コンパイラに渡したソースをそのまま貼ること
  # サイズが大きい場合は宿題スレのアップローダ等を利用してください
★開発環境や動作環境も晒すと答えが早いかもしれません。
★質問者は最初にその質問をした時のレス番号を名前欄に書いて下さい。

長くなりそうなコードはcodepadに貼り付けてもいいでしょう
codepad.org/

82 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/02(月) 20:30:43.33 ]
>>71
俺も欝でITは辞めたけど、未だにプログラムは書いてる。
でも辞めた際、結構本捨てたなぁ…

83 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/02(月) 20:32:32.62 ]
>>42、43
レス遅くなってすみません。色々あって職を変えることになり、覗く暇がなかったもので^^;
なるべく自分で答えを見つけたいのでどうしても分からなくてどうしようもない時はまたお願いしていいですか?優しい言葉ありがとうございます!


84 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/02(月) 20:51:26.12 ]
C++のconstはオブジェクトを値で渡すイメージで使いたい時にとても便利
オブジェクトを実際に値で渡すとスタックを大きく消費するしそのたびにコンストラクターや
コピー演算子が呼ばれてしまうが、constを付けることでオブジェクトのアドレスをスタックにコピーするだけですむのだ
関数内部でオブジェクトが変更されないことが保証されているので、
呼び出し側はあたかも引数に渡したオブジェクトをプリミティブ型のように扱うことが出来る。
いわゆる近代的な言語で設計されているStringオブジェクトやIntegerオブジェクトのようなプリミティブ型を
具象化したクラスが、非コンストメンバーを持たないことで、プリミティブ型のような動作を
するのはとても興味深い。このような動作をさせるのにコンスタントオブジェクトという考え方はとても重要である。

85 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/02(月) 20:52:28.25 ]
何アホなこといってんだコイツ
脳みそにウジでも湧いてんのか
Cのconst語れよ低能


86 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/02(月) 20:52:37.75 ]
>>84
C++スレでやれ

87 名前: ◆QZaw55cn4c mailto:sage [2012/04/02(月) 20:55:39.04 ]
>>84
それは const とともに & も必要じゃないかい?

88 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/02(月) 21:06:38.15 ]
まだC言語スレでC++を語る馬鹿がいたのか

89 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/02(月) 22:06:32.90 ]
つかC99で可変長配列おkになったよね?
なんか>>51とか>>54で不安になって確認しなおしちゃったよ

90 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/02(月) 23:19:32.91 ]
C99でもダメじゃないのか?



91 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/02(月) 23:26:18.32 ]
C99では、配列宣言時には要素数に変数も使えるんじゃなかったか?
真の意味の可変長配列(スコープの途中で要素数を変更したりできるもの)ではないけど…

92 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/02(月) 23:28:24.90 ]
>>90
privatepaste.com/bfbce325f4

93 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/02(月) 23:29:25.42 ]
>>91
そう、それのこと

94 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/02(月) 23:29:40.12 ]
>>87
珍しくあってる。

95 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/02(月) 23:31:26.78 ]
>>92
いや、>>54の話。

96 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/02(月) 23:49:10.90 ]
ああ、ファイルスコープか

97 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/03(火) 09:39:40.06 ]
>>92
これ、ちゃんと最適化されて静的配列になるのかね。
ヘッダーファイルで#define のかわりにconst使うとすると、
static const int n = 100;
とか
extern const int n;
とかしないといけないじゃん。
下のようにすると最適化は不可能だよね。
C99のお作法的にはどうするのが正解なんだろ。

98 名前:はちみつ餃子 ◆8X2XSCHEME mailto:sage [2012/04/03(火) 12:44:57.53 ]
>>97
処理系によって、状況によって最適化されるよ。
VC や gcc は翻訳単位をまたぐ最適化もできる。

99 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/03(火) 14:27:30.29 ]
C言語で2Dゲーム作るのにDXライブラリーより簡単なライブラリーってある?

100 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/03(火) 14:43:57.68 ]
>>99
ncurses



101 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/03(火) 16:31:09.98 ]
ncursesだとnethackくらいが限界かと思う。

102 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/03(火) 17:11:32.51 ]
つくーるでつくれ。

103 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/03(火) 22:35:34.42 ]
うん

104 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/03(火) 23:02:56.88 ]
猫でもわかるってサイト一通り見たんだけど、次何やればいい?
サイトとか教えて

105 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/03(火) 23:04:46.23 ]
              「C実践プログラミング」 でCの文法、make、gdbなど、基礎を習得
                                ↓
     「C言語ポインタ完全制覇」 or 「秘伝C言語問答 ポインタ編」 でポインタに関して完全理解する
                                ↓
「エキスパートCプログラミング―知られざるCの深層」 でスタック、ヒープ、リンカ、ローダなど周辺知識を習得
                                ↓
      「C言語によるオブジェクト指向プログラミング入門」 で大規模プログラムの作り方を学ぶ
                                ↓
           「C言語デバッグ完全解説」でバグに強いプログラムの記述法をマスター
                                ↓
        「Code Complete(上)(下)」でより良いC言語プログラムとは何かを各人で考察する
                                ↓
                              神の誕生


106 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/03(火) 23:18:51.30 ]
英語で言う文法みたいな感覚は理解できたけど、そこから先が・・・orz

107 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/03(火) 23:23:43.29 ]
やろうとしていることをプログラミング言語以前に母語で説明できない奴はプログラマに向いてないってダイクストラが言ってた。

108 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/03(火) 23:29:21.26 ]
だいたい分かるだろw


109 名前:営利利用に関するLR審議中@詳細は自治スレへ [2012/04/04(水) 00:17:35.18 ]
天才の9割は左利き

110 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/04(水) 00:22:45.74 ]
というかB型が圧倒的に多い、経験則だが。
組み込み系なら一層ね。




111 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/04(水) 00:23:40.87 ]
まず作りたいものがあってその実現の為に必要な知識を身に付けるという流れが正しいのであって
ただ盲目的に知識だけ身に付けてもそれで何か勝手に生み出されるかっていうとそういうわけではないよね

112 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/04(水) 00:52:23.09 ]
デタラメに仕入れたはずの知識が線で結ばれることがある
オートマトンとかグラフとか、汎用性が高いと信じられているものと
それに付随するアルゴリズムは、知っておくだけでも有益

113 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/04(水) 18:51:50.32 ]
ポインタについて質問させて下さい。
いま、あるメモリ上にint型の領域をおき
int*型ポインタ変数ip3にそのアドレスを、
int**型ポインタ変数ip2にip3のアドレスを、
int***型ポインタ変数ip1にip2のアドレスを入れ、
ip1から辿って***ip1でint型の値を得られるようにすることを考えます。すなわち、
ip1→ip2→ip3→int型の値
のような形にしたいという事です。それで以下のようなコードを書いたのですが
int ***ip1, **ip2, *ip3;
ip3 = malloc(sizeof(int));
*ip3 = 2;
ip2 = malloc(sizeof(void*));
*ip2 = ip3;
ip1 = malloc(sizeof(void*));
*ip1 = ip2;
printf("%d",***ip1);
これだと型宣言の時点において、int型の値との間に挟まれているポインタの数に応じて、*の数を静的に決めなければなりません。
最終的にint型の値を取り出す際には、*の数を指定してやらなければならないと思いますが、
ip1, ip2, ip3はその仲立ちに過ぎないのですから、「int型からポインタ何個分離れているか」はドントケアで良いはずです。
このような場合、そのように定義するのが適切でしょうか?
ip1,ip2,ip3をvoid*で定義しようとしたらエラーが出ました。

114 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/04(水) 18:54:18.96 ]
訂正です。
×そのように定義するのが適切でしょうか?
○どのように定義するのが適切でしょうか?

115 名前:営利利用に関するLR審議中@詳細は自治スレへ [2012/04/04(水) 18:54:36.28 ]
そもそもの設計が間違ってる。

116 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/04(水) 19:17:36.35 ]
テメーの手に余ることを設計しても
手のつけられないゴミカスが出来上がる
お前がアホなうちは
そんなクソをこの世に生み出すのは

やめ☆とけ


117 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/04(水) 19:26:24.22 ]
>>113
void *ip3;
ip3 = malloc(sizeof(int));
*ip3 = 2;
これがエラーになる理由を考えよう。

118 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/04(水) 19:47:02.18 ]
>>113
void *で宣言して使う時にキャストすりゃできるけどさぁ…

ip1とip2のmallocはいらないだろw

119 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/04(水) 19:48:37.64 ]
>>113
> 「int型からポインタ何個分離れているか」はドントケア
うんうん、ドントケアだよドントケア。
そんなこと考えないからね。

120 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/04(水) 19:56:20.53 ]
専用のmalloc/freeを作るところから始めようじゃないか
*int malloc_i2(int**);void free(int**)
**int malloc_i3(int**);void free(int***);



121 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/04(水) 22:05:14.41 ]
ip1→ip2→ip3→int型の値
ここだけ抜き取ってみると線形リストでことたりるんじゃね? と思ってしまう

122 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/04(水) 22:16:38.57 ]
>>113
よくわからんが、やりたい事は↓のようなことじゃないか?

int *pi, **ppi, ***pppi;

// int用領域確保
pi = malloc(sizeof(int));

// intの値設定
*pi = 2;

ppi = π
pppi = &ppi;

printf("%d\n", ***pppi);

123 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/04(水) 22:18:14.92 ]
>>122

ppi = π
って右辺は化けている。

化けないようにアンパサンドを全角で書くけど。
ppi = π

です。

124 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/04(水) 22:29:39.70 ]
化けてないでござる

125 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/04(水) 22:31:20.86 ]
jane style と firefox じゃあ
モロにギリシャアルファベットのパイになってる


126 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/04(水) 23:49:01.63 ]
>>122

アンパ **;ってHTMLの特殊文字の書き方だったのを思い出して、
下記のように書き換えました。

int i, *pi, **ppi, ***pppi;

// int 値設定
i = 2;

// 各ポインタ設定
pi = &i;
ppi = π
pppi = &ppi;

printf("%d\n", ***pppi);

127 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/05(木) 00:03:37.86 ]
構造体を使えば済む話だろ、どうせ。

128 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/05(木) 00:59:15.58 ]
エロイ人〜教えてー
mallocとかでメモリ確保するのに実メモリサイズ以上の
メモリ取ろうとしたい場合ってどうすりゃいいの?
例えば、PCに8GBの実メモリ積んでて、10GBのメモリを確保したい時とか。
仮想メモリとか、実メモリで説明してくれ。
ダメなら、どういうエラー処理すればいいのかもよろしく。

129 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/05(木) 01:01:24.20 ]
>>128
設計見直して、実メモリ内で収まるようにする。

130 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/05(木) 01:02:20.31 ]
メモリマップドファイル使え
以上。



131 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/05(木) 01:11:18.41 ]
>>130
kwsk

132 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/05(木) 01:17:07.11 ]
>>131
ggrks

133 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/05(木) 01:17:39.17 ]
>>131
環境依存だ
mmap でもググってろ

134 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/05(木) 01:22:55.02 ]
さんきゅー ぐぐってみるゎ!

135 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/05(木) 02:08:13.69 ]
標準関数と同じ結果を返す自作関数(strlenやstrcpy)を作成してみたのですが、
パフォーマンスが大きく異なるのですが一体何が原因なのでしょうか?
以下strlenの自作関数strlen2

int strlen2(char *Buff){
  int i=0;
  while(Buff[i]!='\0'){
    ++i;
  }
  return i;
}

136 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/05(木) 02:09:36.35 ]
最適化

137 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/05(木) 02:25:26.40 ]
>>136
具体的にどのようなコードにすればよいのでしょうか?

138 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/05(木) 02:31:16.56 ]
>>135
Cの標準ライブラリ関数は非常によく使われるので、
実装がチューニングしてある事も多い
内部でSSEのような拡張命令を使ってたりね

あと、コンパイラが標準ライブラリ関数を検出して、
インライン展開などの最適化をかけている事がある

139 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/05(木) 03:00:50.03 ]
>>128
PCがWindowsマシンをさしているのなら、実メモリサイズの制限は受けないよ。

140 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/05(木) 05:08:07.80 ]
>>113に答えて頂いた方々ありがとうございます。
線形リストをやりたいのではなく、ポインタを使ってアクロバットな事をやればポインタへの理解が深まるかなぁと思ったのですが・・・どうもトンチンカンな事をしていたようです。
ip1とip2のmallocは確かに要りませんでした。ip1 = &ip2;で良かったですね。



141 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/05(木) 05:40:27.35 ]
void *にキャストされたポインタは、元のポインタに戻すことができると決まっているけれど、
元の型がわからないから、そういうのを構造体に持たせて、線形リストにしてはどうかという提案だと思っていたよ。

いかにもめんどくさそうでしょ。でもポインタへの理解を深める目的だったらやってみてもいいんじゃないの。

142 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/05(木) 09:01:49.23 ]
>>137
repne scasb
あたりを使えば速くなると思うけど、最適化で既に使われるのかな?

143 名前:営利利用に関するLR審議中@詳細は自治スレへ [2012/04/05(木) 09:36:36.95 ]
論理演算で、指定の位のビットフラグが立っていれば削除するのってどうすればよいですか?
以下のことをif文をつかわずにやりたいです。

if(hoge & 3) {
hoge -= 3;
}


144 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/05(木) 09:46:30.18 ]
hoge &= ~3

145 名前:143 mailto:sage [2012/04/05(木) 09:50:17.54 ]
>>144
ありがとうございます!!

146 名前:営利利用に関するLR審議中@詳細は自治スレへ [2012/04/05(木) 10:05:10.99 ]
みんなwchar_tって使ってる?

147 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/05(木) 11:15:56.63 ]
うん

148 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/05(木) 11:39:11.45 ]
>>143
最早どうでもいいだろうけど>143のコード断片では例えばhogeが1のときに破綻するよ。

149 名前:営利利用に関するLR審議中@詳細は自治スレへ [2012/04/05(木) 12:01:26.70 ]
よかったです

150 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/05(木) 12:14:42.66 ]
1と2のorかもしれないじゃないか



151 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/05(木) 12:44:48.81 ]
>>150
もう一歩前へ

152 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/05(木) 13:03:32.57 ]
>>143
4の倍数じゃなかったら3を引くってことをやりたいわけじゃないのね

153 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/05(木) 13:05:36.75 ]
うん

154 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/05(木) 15:27:58.64 ]
3てのは2ビット立っているってのを理解してないに3カノッサ。

155 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/05(木) 17:52:55.65 ]
指定の位のビットフラグ、、、
hoge &= ~(1<<2)
なんじゃないのか?

156 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/05(木) 18:02:43.28 ]
日本語の説明と記述されたコードが不一致だから どうとでもとれるな

    hoge   1 2  3 4 5 6
>>143 結果 -2 -1 0 4 2 3
>>144 結果  0  0 0 4 4 4

157 名前:営利利用に関するLR審議中@詳細は自治スレへ [2012/04/05(木) 18:38:17.55 ]
#include <stdio.h>
#include <sys/types.h>

static u_int biton(u_int a, u_int bit)
{
return a | (1 << bit);
}

static u_int bitoff(u_int a, u_int bit)
{
return a & ~(1 << bit);
}

static int bitcmp(u_int a, u_int bit)
{
return (a & (1 << bit)) ? 1: 0;
}

main()
{
printf("%u\n", biton(biton(0, 0), 1));
printf("%u\n", bitoff(7, 2));
printf("%d %d %d\n", bitcmp(3, 0), bitcmp(3, 1), bitcmp(3, 2));
}

158 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/05(木) 19:10:19.64 ]
hogeの下位2ビットをクリアしたい、と解釈しましたので、>>144のようなコードになりました。
どういう結果になって欲しかったんだろう・・・?

159 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/05(木) 20:13:18.71 ]
3がどうこうif無しどうこうで少し前のレスに釣られてフィズバズ試してた俺はピンとキタ
こんなのしたかったんじゃないかな?
int main(){unsigned x5=32,x3=8;int x; char buf[256]; char const*p[]={buf,"Fizz","Buzz","FizzBazz"};
if ((x=atoi((gets(buf),buf)))<=0)return -1; x3>>=(x%4); x5>>=(x%6);
while(~0){sprintf(buf,"%d",x++); puts(p[(x3&1)+(x5&1)*2]); x3|=(x3<<3)&8;x3>>=1; x5|=(x5<<5)&32;x5>>=1; }
return 0; }

160 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/06(金) 01:33:56.62 ]
mallocでメモリを確保したさい、callocと同様にゼロクリアするにはどうするのでしょうか?
forで回してnilやNULLを代入してみたのですがダメでした。



161 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/06(金) 01:36:51.77 ]
面白い回答

      ↓

162 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/06(金) 02:02:46.04 ]
0クリアしたいなら最初からcalloc使えよ

163 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/06(金) 02:07:12.67 ]
calloc = clear and allocate

164 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/06(金) 03:10:42.76 ]
>>160
ゼロクリアしたいならゼロいれればいいのに。
allocと別タイミングでゼロクリアしたいんだという話ならmemsetで

165 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/06(金) 03:19:30.04 ]
Cで文脈なしにnilって言われてもなんのことやら

166 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/06(金) 05:16:16.50 ]
NUL、NULLと間違えたんじゃないかとスルーしていた

167 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/06(金) 05:17:53.02 ]
NULなんて定義はないと思うが。

168 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/06(金) 05:50:21.50 ]
NULとかnilって昔なんかでみた気がする。
VBだかCOBOLだかでなかったっけ?

169 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/06(金) 05:56:03.34 ]
>>160
int *p = malloc(100);
memset(p, 0, 100);

NILは使ったことあるな。
ただし、気象用語だったが…

170 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/06(金) 06:15:33.65 ]
NULはASCIIコードの0x00
CRが0x0d,LFが0x0aってのと同じ
nilは思いつくところでRuby,Lisp,Delphi,Luaで使われてる



171 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/06(金) 06:19:05.88 ]
C言語スレだっつーのに。
アホか。

172 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/06(金) 06:47:23.02 ]
なら、objcってことで。

173 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/06(金) 07:13:23.08 ]
なんだこのバカ

174 名前:営利利用に関するLR審議中@詳細は自治スレへ [2012/04/06(金) 08:29:06.23 ]
>>forで回してnilやNULLを代入してみたのですがダメでした。
こっちの方が問題だろ。なにが起きたんだよ。

175 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/06(金) 08:55:41.40 ]
www.kijineko.co.jp/tech/superstitions/initialization-by-memset.html
これでしょ

176 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/06(金) 09:20:52.47 ]
んなわけあるかボケ。

177 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/06(金) 11:27:46.92 ]
うん

178 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/06(金) 11:53:08.77 ]
でも、実際に>175が問題になる処理系はあんまりないんだよね。

179 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/06(金) 12:20:19.05 ]
パッキングによるmemcmpは普通にあるでしょ。

180 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/06(金) 13:37:57.58 ]
うん



181 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/06(金) 15:05:42.27 ]
>>178
問題になる処理系あげてみろ。
>>179
なぜ関係ない話を出す?

182 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/06(金) 15:18:12.09 ]
>>181
?






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<138KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef