C言語の話題のみ取り扱います C++の話題はC++スレへ
質問には最低限の情報(ソース/コンパイラ/OS)を付ける
数行で収まらないソースは以下を適当に使ってURLを晒す
https://paiza.io/
https://ideone.com/
http://codepad.org/
C11
http://www.open-std.org/jtc1/sc22/WG14/www/docs/n1570.pdf
C99
http://www.open-std.org/jtc1/sc22/WG14/www/docs/n1256.pdf
http://kikakurui.com/x3/X3010-2003-01.html
C FAQ 日本語訳
http://www.kouno.jp/home/c_faq/
JPCERT C コーディングスタンダード
https://www.jpcert.or.jp/sc-rules/
前
C言語なら俺に聞け 144
https://mevius.5ch.net/test/read.cgi/tech/1514025223/
次スレを立てる時は本文の1行目に以下を追加して下さい
!extend:on:vvvvv:1000:512
VIPQ2_EXTDAT: default:vvvvv:1000:512:----: EXT was configured
C言語なら俺に聞け 145
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん (ワッチョイ 9381-qput)
2018/02/19(月) 22:13:58.98ID:9/te2eSJ0610デフォルトの名無しさん (ワッチョイ 5b61-3KaU)
2018/03/26(月) 12:18:06.83ID:0ihjlnG/0 nかsは定数じゃないと駄目みたいでした。
611デフォルトの名無しさん (アウーイモ MMc7-APr9)
2018/03/26(月) 12:31:41.16ID:k+G5ovIGM sがなんだかわからないけど
void *h(int n, int s){
return ((struct a *)v+n*s);
}
じゃだめなん?
s=1ならi()と同じだと思うけど。
void *h(int n, int s){
return ((struct a *)v+n*s);
}
じゃだめなん?
s=1ならi()と同じだと思うけど。
612デフォルトの名無しさん (ワッチョイ 5b61-3KaU)
2018/03/26(月) 12:37:07.82ID:0ihjlnG/0 struct a *は8バイトなので8を入れればよいのです。
613デフォルトの名無しさん (アウーイモ MMc7-APr9)
2018/03/26(月) 12:40:49.01ID:v3bCx+j3M ブロックサイズみたいなイメージかな。
だったらsizeof(struct a)にしたほうがよいかと。
だったらsizeof(struct a)にしたほうがよいかと。
614デフォルトの名無しさん (アウアウカー Sac3-t4/V)
2018/03/26(月) 13:35:11.46ID:ioIbXl47a615デフォルトの名無しさん (ワッチョイ 8bb3-c/f+)
2018/03/26(月) 14:37:40.54ID:g7RAb+fM0 最適化されたらおんなじじゃね?
616片山博文MZ ◆T6xkBnTXz7B0 (スフッ Sdba-OUTG)
2018/03/26(月) 14:44:36.91ID:42MV7MT1d struct a*のサイズは32-bit 環境だと4だよな。64ビットだと8バイト。
617片山博文MZ ◆T6xkBnTXz7B0 (スフッ Sdba-OUTG)
2018/03/26(月) 14:47:59.15ID:42MV7MT1d ポインタを操作するなら、size_tとかptrdiff_t使った方がいいな。
618デフォルトの名無しさん (アウアウアー Sa06-APr9)
2018/03/26(月) 15:00:59.23ID:+d/fyZgca >>616
ここでは構造体の実体の配列だからsizeof(struct a)で大丈夫。
int1つのサイズは典型的には4byteだけど、IP64だのあまり見ない
データモデルでは8byteのこともあるから、構造体のサイズを使うときは
sizeofがよい(MAY)、ではなくてsizeofにすべき(ほぼMUSTのSHOULD)。
ここでは構造体の実体の配列だからsizeof(struct a)で大丈夫。
int1つのサイズは典型的には4byteだけど、IP64だのあまり見ない
データモデルでは8byteのこともあるから、構造体のサイズを使うときは
sizeofがよい(MAY)、ではなくてsizeofにすべき(ほぼMUSTのSHOULD)。
619デフォルトの名無しさん (ワッチョイ 3708-zkh5)
2018/03/26(月) 17:51:14.16ID:wby0cWXW0620デフォルトの名無しさん (ワッチョイ 9ae9-YOip)
2018/03/26(月) 17:52:53.38ID:5fqWa8qC0 本買うならどれがいい?
本より優れたサイトがあるならそれでもいいぞ
本より優れたサイトがあるならそれでもいいぞ
621デフォルトの名無しさん (ワンミングク MM8a-Gtgj)
2018/03/26(月) 19:16:37.53ID:b1dSvJWqM622デフォルトの名無しさん (ワッチョイ 5b61-3KaU)
2018/03/27(火) 07:05:39.20ID:VOv2iUaR0 struct a{
bool a:1;
uint32_t b:31;
uint16_t c;
};
struct a{
uint32_t b;
uint16_t c;
bool a;
};
上の構造体が12バイツでしたが8バイツの理由がわかりません、上を8バイツにしたいです。
bool a:1;
uint32_t b:31;
uint16_t c;
};
struct a{
uint32_t b;
uint16_t c;
bool a;
};
上の構造体が12バイツでしたが8バイツの理由がわかりません、上を8バイツにしたいです。
623デフォルトの名無しさん (ワッチョイ a304-h0dl)
2018/03/27(火) 07:14:25.16ID:6oSpwfuc0 C言語のboolって何バイト?
C++だとINTと等価なことがそれなりにあるんだけど。
C++だとINTと等価なことがそれなりにあるんだけど。
624デフォルトの名無しさん
2018/03/27(火) 07:32:57.91 >>622
よく分からないんだけど、2つ構造体を書いてるのは何を意図してるの?
よく分からないんだけど、2つ構造体を書いてるのは何を意図してるの?
625デフォルトの名無しさん (ワッチョイ a393-4ZrE)
2018/03/27(火) 07:57:42.10ID:tnecWY6M0 >>622
俺の環境ではどっちのsizeofの値も8バイツを返したから環境依存だろう。
#pragma か __attribute__ で詰め込めるかも知れんけど、
ビットフィールドを狙って使える指定方法があるかどうか。
詰めたら詰めたで6バイツや7バイツになっちゃう危険もあるし。
>>623
<stdbool.h> にどう書いてあるかだろうな。
これも試したら sizeof(bool) に1を返した。
<stdbool.h> の実体を思しきファイルを覗いたら
#define _Bool signed char
#define bool _Bool
の連鎖になってた。typedefでないのが少々意外。
#ifdef で定義済か未定義かを判定できるようにするためだろうか。
俺の環境ではどっちのsizeofの値も8バイツを返したから環境依存だろう。
#pragma か __attribute__ で詰め込めるかも知れんけど、
ビットフィールドを狙って使える指定方法があるかどうか。
詰めたら詰めたで6バイツや7バイツになっちゃう危険もあるし。
>>623
<stdbool.h> にどう書いてあるかだろうな。
これも試したら sizeof(bool) に1を返した。
<stdbool.h> の実体を思しきファイルを覗いたら
#define _Bool signed char
#define bool _Bool
の連鎖になってた。typedefでないのが少々意外。
#ifdef で定義済か未定義かを判定できるようにするためだろうか。
626デフォルトの名無しさん (ワッチョイ 9761-fzSc)
2018/03/27(火) 08:47:18.29ID:/RdC4ccn0 >622
uint32_t b; がバイト境界にひっかかったせいじゃね?
uint32_t b; がバイト境界にひっかかったせいじゃね?
627デフォルトの名無しさん (ワッチョイ 3e23-zkh5)
2018/03/27(火) 08:57:59.42ID:9ekvYNlc0 コレナンデ境界
628デフォルトの名無しさん (ワッチョイ d78a-Gtgj)
2018/03/27(火) 09:51:51.20ID:GW1/xmrB0 アライメント
629デフォルトの名無しさん (ワッチョイ 3708-zkh5)
2018/03/27(火) 10:02:58.62ID:i2YWXGc+0 alignment
Емельяненко
なんで日本人は「ん」を飛ばすかねえ
Емельяненко
なんで日本人は「ん」を飛ばすかねえ
630デフォルトの名無しさん (ワッチョイ 9761-fzSc)
2018/03/27(火) 10:04:40.74ID:/RdC4ccn0 間抜けな回答してるな>オレ
||
||
∧||∧
( / ⌒ヽ
| | |
∪ / ノ
| ||
∪∪
-━━-
||
||
∧||∧
( / ⌒ヽ
| | |
∪ / ノ
| ||
∪∪
-━━-
631デフォルトの名無しさん (ワッチョイ b6a1-fzSc)
2018/03/27(火) 10:37:30.96ID:UpIjn8oG0 >629
>なんで日本人は「ん」を飛ばすかねえ
「全て」の日本人が「ン」を飛ばすわけではありません。
「或る」日本人が「ン」を飛ばすだけです。
ところで、ロシア語の
Емельяненко(エメリャネンコ)
とはどういう意味ですか。手元の「ロ日辞典」をひいても
でていないので
>なんで日本人は「ん」を飛ばすかねえ
「全て」の日本人が「ン」を飛ばすわけではありません。
「或る」日本人が「ン」を飛ばすだけです。
ところで、ロシア語の
Емельяненко(エメリャネンコ)
とはどういう意味ですか。手元の「ロ日辞典」をひいても
でていないので
632デフォルトの名無しさん (ワッチョイ 5b61-3KaU)
2018/03/27(火) 11:17:02.05ID:VOv2iUaR0 struct a{
bool x:1;
uint32_t y:31;
};
しらべたらこれの大きさが8バイツでした
sizeof(struct a)とやったらそうなったのでアラインメントのもんだいではありません。
どうしても4バイツにしたいです
bool x:1;
uint32_t y:31;
};
しらべたらこれの大きさが8バイツでした
sizeof(struct a)とやったらそうなったのでアラインメントのもんだいではありません。
どうしても4バイツにしたいです
633デフォルトの名無しさん (ササクッテロル Spbb-c/f+)
2018/03/27(火) 11:20:50.14ID:949beg24p 型を揃えるか、ブラグマ指定する、
634デフォルトの名無しさん (ワッチョイ a304-h0dl)
2018/03/27(火) 11:22:01.11ID:6oSpwfuc0 もしかして変数を分解しようとしてる?
Unionってしってるかー?
Unionってしってるかー?
635デフォルトの名無しさん (ササクッテロル Spbb-c/f+)
2018/03/27(火) 11:24:10.52ID:949beg24p 構造体宣言に
__attribute__((packed))
を挟む
__attribute__((packed))
を挟む
636デフォルトの名無しさん (ワッチョイ a304-h0dl)
2018/03/27(火) 11:26:05.22ID:6oSpwfuc0 C++なら、無名うにおんとかつかえて楽なんだけど、Cは一々名前がつくので面倒。
637デフォルトの名無しさん (ササクッテロル Spbb-c/f+)
2018/03/27(火) 11:26:08.96ID:949beg24p 両方uint32_tにすりゃいいだろ。
638デフォルトの名無しさん (ワッチョイ 5b61-3KaU)
2018/03/27(火) 11:26:51.67ID:VOv2iUaR0 struct a{
uint32_t a:1;
uint32_t y:31;
};
こうやったらできました
ビットフィールドを勘違いしていたのが原因みたいです。
uint32_t a:1;
uint32_t y:31;
};
こうやったらできました
ビットフィールドを勘違いしていたのが原因みたいです。
639デフォルトの名無しさん (ワッチョイ a304-h0dl)
2018/03/27(火) 11:27:20.90ID:6oSpwfuc0 あら、そっちか。
640デフォルトの名無しさん (ワッチョイ 5b61-3KaU)
2018/03/27(火) 11:36:24.22ID:VOv2iUaR0 struct a{
union{
bool a:1;
struct{
uint32_t x:1;
uint32_t y:31;
};
};
};
つまりこうしたらよいのですね。
勉強になりました。ありがとうございます。
union{
bool a:1;
struct{
uint32_t x:1;
uint32_t y:31;
};
};
};
つまりこうしたらよいのですね。
勉強になりました。ありがとうございます。
641デフォルトの名無しさん
2018/03/27(火) 12:00:48.00642デフォルトの名無しさん (アウアウカー Sac3-t4/V)
2018/03/27(火) 12:36:27.71ID:NeN1yqDWa >>622
ビットフィールドって同じ型が並んでないとまとめてくれないのでは?
なので、
bool a:1;
uint32_t b:31;
ではなくて
uint32_t a:1;
uint32_t b:31;
にしたらできないか?
ビットフィールドって同じ型が並んでないとまとめてくれないのでは?
なので、
bool a:1;
uint32_t b:31;
ではなくて
uint32_t a:1;
uint32_t b:31;
にしたらできないか?
643デフォルトの名無しさん (アウアウカー Sac3-t4/V)
2018/03/27(火) 12:39:07.90ID:NeN1yqDWa 既に答えが出て解決していた
||
||
∧||∧
( / ⌒ヽ
| | |
∪ / ノ
| ||
∪∪
-━━-
||
||
∧||∧
( / ⌒ヽ
| | |
∪ / ノ
| ||
∪∪
-━━-
644デフォルトの名無しさん (ワッチョイ 3708-zkh5)
2018/03/27(火) 12:44:29.48ID:i2YWXGc+0645デフォルトの名無しさん (ワッチョイ 5b61-3KaU)
2018/03/27(火) 13:11:29.05ID:VOv2iUaR0646デフォルトの名無しさん (ワッチョイ 1ae1-TLa6)
2018/03/27(火) 13:53:29.94ID:KACb5w790 >>645
どこが正しくないのか説明してもらわないとたぶん誰も分からない
どこが正しくないのか説明してもらわないとたぶん誰も分からない
647デフォルトの名無しさん (ワッチョイ 5b61-3KaU)
2018/03/27(火) 15:15:12.36ID:VOv2iUaR0648片山博文MZ ◆T6xkBnTXz7B0 (スフッ Sdba-OUTG)
2018/03/27(火) 15:32:49.24ID:eCLpRZm+d unionにビットフィールドは使えないっしょ。
649デフォルトの名無しさん (ワッチョイ 638a-7K4Y)
2018/03/27(火) 15:42:37.68ID:jWaORT7c0650デフォルトの名無しさん (ワッチョイ 4eea-/hfl)
2018/03/27(火) 15:45:46.56ID:jMKP3TFv0 struct になってない単変数でのビットフィールドって
結局支持された型の空間をめいっぱい使って書いてるんでないの
結局支持された型の空間をめいっぱい使って書いてるんでないの
651デフォルトの名無しさん (ワッチョイ 5b61-3KaU)
2018/03/27(火) 16:45:45.41ID:VOv2iUaR0652デフォルトの名無しさん (ワッチョイ a393-4ZrE)
2018/03/27(火) 17:22:21.42ID:tnecWY6M0653デフォルトの名無しさん
2018/03/27(火) 17:46:09.15 >>647
unionの中にもう一つstruct
uint32_t b0:1; 〜 uint32_t b31:1;
を入れてみて、b0〜b31をオール0、その次はオール1にして
aやyに代入するたびにb0〜b31がどう変化するかを確かめればいいと思うよ。
unionの中にもう一つstruct
uint32_t b0:1; 〜 uint32_t b31:1;
を入れてみて、b0〜b31をオール0、その次はオール1にして
aやyに代入するたびにb0〜b31がどう変化するかを確かめればいいと思うよ。
654デフォルトの名無しさん (ベーイモ MMd2-OQu2)
2018/03/27(火) 18:48:56.23ID:lphBpvplM gotoは要らない子?
655デフォルトの名無しさん (アウアウカー Sac3-t4/V)
2018/03/27(火) 19:18:17.87ID:NeN1yqDWa >>652
コンパイラによっては型に関係なく並べるのもあるのか。知らなかった。
コンパイラによっては型に関係なく並べるのもあるのか。知らなかった。
656デフォルトの名無しさん (ワッチョイ 33b5-c/f+)
2018/03/28(水) 09:16:12.84ID:UsIzsSLh0 unionで共用関係作っても、詰め込み順が統一されてる保証は無いからなぁ。
んなトリッキーな処理は、移植ん時死ねるぞ。
んなトリッキーな処理は、移植ん時死ねるぞ。
657デフォルトの名無しさん (ワッチョイ 3e23-zkh5)
2018/03/28(水) 09:21:05.87ID:hD+ZgK6z0 ビットフィールドの順番がコンパイラによって違うのには参った
658デフォルトの名無しさん (アウアウウー Sac7-zkh5)
2018/03/28(水) 09:27:44.69ID:txGSPNwpa659デフォルトの名無しさん (ワッチョイ 3708-zkh5)
2018/03/28(水) 15:08:36.90ID:NO5LUaew0 いやあ、そんなドジ踏んだことないし
踏んだやつも見かけないなあ
unionなんか使うときはそういう危険性には
真っ向から対峙しているのでうっかり考え落とす
なんてことは起こりえない
ポインタをキャストするときのほうが危ないぞ
unionよりも遙かに使用頻度が高くて油断しがち
踏んだやつも見かけないなあ
unionなんか使うときはそういう危険性には
真っ向から対峙しているのでうっかり考え落とす
なんてことは起こりえない
ポインタをキャストするときのほうが危ないぞ
unionよりも遙かに使用頻度が高くて油断しがち
660デフォルトの名無しさん (ワッチョイ ba60-fzSc)
2018/03/28(水) 16:15:36.83ID:zOM5QtYn0 >>659
たしかに
たしかに
661デフォルトの名無しさん (ササクッテロル Spbb-c/f+)
2018/03/28(水) 20:45:19.82ID:inZxrYqzp 普段からアライメント気にしない石使ってると死ぬるw
662デフォルトの名無しさん (アウアウエー Sa23-HAdz)
2018/03/29(木) 00:01:16.65ID:ySkkjEPJa 野積み
663デフォルトの名無しさん (ブーイモ MMb3-vInS)
2018/03/29(木) 00:09:03.12ID:X8gSQriyM SIG11
664デフォルトの名無しさん (ワッチョイ 219f-kUw7)
2018/03/29(木) 00:30:03.68ID:HYrXjV+u0 >>654
出来の悪い子ほど可愛いものさ
出来の悪い子ほど可愛いものさ
665デフォルトの名無しさん (ワッチョイ 4104-2GNe)
2018/03/29(木) 02:58:45.40ID:Ng8O1HeK0 GOTOはその場所より基本上流に流しちゃいけない。
それだけ守ってればいいと思う。
それだけ守ってればいいと思う。
666デフォルトの名無しさん
2018/03/29(木) 03:06:08.42 if文とかfor文の中に飛ばすのもダメだろ
関数末尾以外に飛ばすのは基本アカンと思う
関数末尾以外に飛ばすのは基本アカンと思う
667デフォルトの名無しさん (ワッチョイ d180-3UCh)
2018/03/29(木) 07:24:44.79ID:+dX3Weor0 gotoとswitchの組み合わせはよくやる。
668デフォルトの名無しさん (ワッチョイ 219f-kUw7)
2018/03/29(木) 22:57:50.45ID:HYrXjV+u0 >>667
switch と goto と聞いて、はっもしやこんなこともできるのでは、と思ってやってみたら、できてしまったよ。どうしよう。
#include <stdio.h>
int main()
{
int i;
for (i = 0; i < 10; i++) {
if (i == 5)
goto hoge;
switch (i) {
case 1:
puts("いち");
break;
hoge:
puts("ご");
break;
}
}
return 0;
}
switch と goto と聞いて、はっもしやこんなこともできるのでは、と思ってやってみたら、できてしまったよ。どうしよう。
#include <stdio.h>
int main()
{
int i;
for (i = 0; i < 10; i++) {
if (i == 5)
goto hoge;
switch (i) {
case 1:
puts("いち");
break;
hoge:
puts("ご");
break;
}
}
return 0;
}
669デフォルトの名無しさん (アウアウウー Sa45-kUw7)
2018/03/30(金) 13:01:35.10ID:fkO+Wt7Ma 情報処理用にC頑張り始めたンスけど、初心者本は2冊くらい終えて、簡単なプログラムならあるていど作れるようにもなったんスけど、FEの過去問には全く歯がたたないっすw
670デフォルトの名無しさん (アウアウウー Sa45-kUw7)
2018/03/30(金) 13:03:50.38ID:fkO+Wt7Ma 初見の歯抜けプログラムみて選択肢与えられてもなんだかさっぱり読み切れん…
中級本の内容の方がまだ簡単なんスけどニキこれなんなんすか
中級本の内容の方がまだ簡単なんスけどニキこれなんなんすか
671デフォルトの名無しさん (ワッチョイ d161-HAdz)
2018/03/30(金) 13:04:58.91ID:n1WKWzHR0 Duff's deviceっていうスイッチの中にループがあるのもある
672デフォルトの名無しさん (ワッチョイ 5923-HAdz)
2018/03/30(金) 16:19:34.10ID:zQBQo8b30673デフォルトの名無しさん (ワッチョイ 4123-xai/)
2018/03/30(金) 16:22:11.93ID:bDuRGN0f0 >>668
goto default;
goto default;
674デフォルトの名無しさん (ワッチョイ d35d-2oNG)
2018/03/30(金) 16:55:37.88ID:InC0asnz0 あれにはそういう名前があったのか。ありがとう。
675デフォルトの名無しさん (ワッチョイ 1908-kUw7)
2018/03/30(金) 17:55:35.60ID:6y8tfNRe0 同じく
名前は知らんかった
名前は知らんかった
676デフォルトの名無しさん (ワッチョイ 59d8-0/ta)
2018/03/30(金) 19:36:36.57ID:FHOFausT0 値の入れ替え処理ってどう描けばいいんや
677片山博文MZ ◆T6xkBnTXz7B0 (スフッ Sdb3-MT4c)
2018/03/30(金) 19:38:47.12ID:9udtptfNd678デフォルトの名無しさん (ブーイモ MM85-vInS)
2018/03/30(金) 19:42:57.58ID:TqB3XhjJM a = a ^ b;
b = a ^ b;
a = a ^ b;
b = a ^ b;
a = a ^ b;
679デフォルトの名無しさん (ワッチョイ 59d8-0/ta)
2018/03/30(金) 19:46:21.82ID:FHOFausT0680片山博文MZ ◆T6xkBnTXz7B0 (スフッ Sdb3-MT4c)
2018/03/30(金) 19:47:24.27ID:9udtptfNd a ^= b;
b ^= a;
a ^= b;
b ^= a;
a ^= b;
681デフォルトの名無しさん (ワッチョイ 5360-uaFS)
2018/03/30(金) 19:49:14.07ID:sxHgkaP90 >>678
b の実体が a だと a = 0 になってしまう、とは頻繁に指摘されるところ
b の実体が a だと a = 0 になってしまう、とは頻繁に指摘されるところ
682片山博文MZ ◆T6xkBnTXz7B0 (スフッ Sdb3-MT4c)
2018/03/30(金) 19:49:30.92ID:9udtptfNd void myswap(int *pa, int *pb)
{
int tmp = *pa;
*pa = *pb;
*pb = tmp;
}
{
int tmp = *pa;
*pa = *pb;
*pb = tmp;
}
683デフォルトの名無しさん (アウアウカー Sadd-rlcN)
2018/03/30(金) 20:19:58.73ID:x2Z4e+RCa >>677
それC++だよね。
それC++だよね。
684デフォルトの名無しさん (ワッチョイ 2b81-kUw7)
2018/03/30(金) 20:29:07.56ID:zSEpPQDd0 ワザとだと思います
685デフォルトの名無しさん (ワッチョイ 5be9-VlFK)
2018/03/30(金) 20:32:46.73ID:3ziE5qsO0 値の入れ替えってどういう局面で使うの?
686片山博文MZ ◆T6xkBnTXz7B0 (スフッ Sdb3-MT4c)
2018/03/30(金) 20:35:46.51ID:9udtptfNd >>685
ソートとか、順番を変えるときとか、データの入れ替えなど。
ソートとか、順番を変えるときとか、データの入れ替えなど。
687デフォルトの名無しさん (ブーイモ MMf5-6v0Y)
2018/03/30(金) 20:37:07.43ID:N/erQ4tDM ソート
他では見かけない
他では見かけない
688片山博文MZ ◆T6xkBnTXz7B0 (スフッ Sdb3-MT4c)
2018/03/30(金) 20:42:10.63ID:9udtptfNd 音楽のシャッフルなんかもswap使っている。
689デフォルトの名無しさん (ワッチョイ 5be9-VlFK)
2018/03/30(金) 20:49:54.40ID:3ziE5qsO0 ああ、int aとかじゃなくて配列要素に使うのね
納得ありがとう
納得ありがとう
690片山博文MZ ◆T6xkBnTXz7B0 (スフッ Sdb3-MT4c)
2018/03/30(金) 20:53:18.14ID:9udtptfNd 配列要素やポインタにも使える。この入れ替えアルゴリズムを抽象化するとC++のstd::swapになる。
691デフォルトの名無しさん (ワッチョイ ab9f-psQl)
2018/03/30(金) 23:15:31.22ID:sWH8jgUv0 goto LABEL0;
{
int i = 1; /* 初期化 */
int j;
j = 1; /* 代入 */
LABEL0:
printf("%d %d\n", i, j);
}
{
int i = 1; /* 初期化 */
int j;
j = 1; /* 代入 */
LABEL0:
printf("%d %d\n", i, j);
}
692デフォルトの名無しさん (アウアウウー Sa45-fCoj)
2018/03/31(土) 01:54:40.82ID:OnKsCXxga Mapみたいな連想配列使いたいんだが何使えばええんや
693デフォルトの名無しさん (アウアウエー Sa23-HAdz)
2018/03/31(土) 03:57:34.23ID:2Z4gCLvWa switchのラベルって違うswitch(){}の中なら重複してても使えるやん?
それで goto HOGE; したらどっちに飛ぶ?
それで goto HOGE; したらどっちに飛ぶ?
694デフォルトの名無しさん (アウアウエー Sa23-HAdz)
2018/03/31(土) 03:58:50.47ID:2Z4gCLvWa >>681
ならねーよΩ
ならねーよΩ
695デフォルトの名無しさん (ワッチョイ 5360-uaFS)
2018/03/31(土) 07:10:32.62ID:1xZcLHDp0696デフォルトの名無しさん
2018/03/31(土) 07:17:07.25 if (a != b) {
a = a ^ b;
b = a ^ b;
a = a ^ b;
}
a = a ^ b;
b = a ^ b;
a = a ^ b;
}
697デフォルトの名無しさん (ワッチョイ 5360-uaFS)
2018/03/31(土) 07:19:42.34ID:1xZcLHDp0 >>696
それは対策になっていない
それは対策になっていない
698デフォルトの名無しさん
2018/03/31(土) 08:13:17.33 >>697
なんで?
なんで?
699デフォルトの名無しさん (ブーイモ MMb3-vInS)
2018/03/31(土) 08:15:52.05ID:NJrC8qbaM700デフォルトの名無しさん (ワッチョイ 5360-uaFS)
2018/03/31(土) 08:22:07.33ID:1xZcLHDp0701デフォルトの名無しさん (ワッチョイ 5961-uaFS)
2018/03/31(土) 08:47:25.82ID:EbDGZ0yc0 wikiより
void xorSwap(int *x, int *y)
{
if (x != y) {
*x ^= *y;
*y ^= *x;
*x ^= *y;
}
}
void xorSwap(int *x, int *y)
{
if (x != y) {
*x ^= *y;
*y ^= *x;
*x ^= *y;
}
}
702デフォルトの名無しさん (ワッチョイ 1908-kUw7)
2018/03/31(土) 08:59:46.96ID:15qJIIAA0 bの実体がaなんてことが参照のないCで起こりうるのか?
#define b aなんてアホなことぬかすなよ
#define b aなんてアホなことぬかすなよ
703デフォルトの名無しさん (ワッチョイ 4104-2GNe)
2018/03/31(土) 09:06:42.53ID:8va89mAu0 ヒューマンエラーは果てしないのじゃー。
704マクロでーとか言いそう w (ワッチョイ 93b3-PArs)
2018/03/31(土) 09:12:11.67ID:OaeapR1O0705デフォルトの名無しさん (ワッチョイ 5360-uaFS)
2018/03/31(土) 09:13:01.96ID:1xZcLHDp0 >>702
その #define マクロでうっかり、xor スワップを書いてしまう、とかは、可能性としてあり得りますね
あと、C++ テンプレートで書いてしまったり、とかね
https://ideone.com/NEeCNr
その #define マクロでうっかり、xor スワップを書いてしまう、とかは、可能性としてあり得りますね
あと、C++ テンプレートで書いてしまったり、とかね
https://ideone.com/NEeCNr
706デフォルトの名無しさん (ワッチョイ 5360-uaFS)
2018/03/31(土) 09:13:25.89ID:1xZcLHDp0707デフォルトの名無しさん (ワッチョイ 81b3-L1IY)
2018/03/31(土) 09:57:17.92ID:V7rzy3dc0 マクロで xor の入れ替えを書く
配列の操作で同じ要素の入れ替えも、都合上そのまま交換する方向で記述する
(配列を逆順に入れ替える時、要素数が奇数だと発生
配列の操作で同じ要素の入れ替えも、都合上そのまま交換する方向で記述する
(配列を逆順に入れ替える時、要素数が奇数だと発生
708デフォルトの名無しさん (ワッチョイ 93b3-PArs)
2018/03/31(土) 10:03:16.74ID:OaeapR1O0709デフォルトの名無しさん (ワッチョイ 5360-uaFS)
2018/03/31(土) 10:08:47.90ID:1xZcLHDp0 >>708
今どんな気持ち?どんな気持ち?AA略
今どんな気持ち?どんな気持ち?AA略
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- バリ島で男子生徒ら集団万引きか、防犯カメラ映像が拡散 京都の大谷中学・高校が「窃盗行為」謝罪★4 [七波羅探題★]
- 【地震速報】青森県で震度6強 沿岸部に津波警報 ★6 [ぐれ★]
- 【速報】気象庁は津波注意報すべて解除 [蚤の市★]
- 「日の丸にバツ印」掲げた大学生 あいまいな国旗損壊罪に「怖い」 The Mainichi [少考さん★]
- 【テレビ】25年ぶり復活「炎のチャレンジャー」南原清隆&菊池風磨がMC 懐かし「電流イライラ棒」も [湛然★]
- 【音楽】BARBEE BOYS・KONTAが事故で四肢麻痺を公表、新体制で活動は継続 [少考さん★]
- 働いて参ります
- ( ・᷄ὢ・᷅ )あ?
- ブタをぶったたく
- とうとう袖なしジージャン買ったったwww
- こんな自転車乗ってたやつがいたら?
- 【画像】童貞は絶ッッッ対"4"を選ぶバレー部J Kが寮でパンパンの集合写真見つけちゃったwwwwwwwwwwwwww [904880432]
