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言語なら俺に聞け 142
http://mevius.2ch.net/test/read.cgi/tech/1502364083/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:----: EXT was configured
探検
C言語なら俺に聞け 143
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん (ワッチョイ b375-rVGZ)
2017/10/27(金) 21:28:08.20ID:pAogLeJi02デフォルトの名無しさん (ワッチョイ d1b3-ZNPd)
2017/10/27(金) 21:56:32.94ID:/LUCvRWS0 おっつ おっつ
3デフォルトの名無しさん (ブーイモ MMeb-gj0X)
2017/10/27(金) 23:12:15.85ID:67YjQzLBM >>1
乙
乙
4デフォルトの名無しさん (ワッチョイ 9193-cGPg)
2017/10/28(土) 08:25:42.00ID:VIxhg0oq0 「新スレッドは○番に書き込んだ人が立てる」みたいなガイドラインを
テンプレートに盛り込んだ方が安心じゃないかな。
前スレッドの終了まで新スレッド(ここ)が立たなかったし、
999番で「誰か立ててくれ」と書き込まれたのに応じて
「立てたよ、リンク先は…」と誘導に使われるべき1000番が
無意味な「あぼーん」で潰されたし。
テンプレートに盛り込んだ方が安心じゃないかな。
前スレッドの終了まで新スレッド(ここ)が立たなかったし、
999番で「誰か立ててくれ」と書き込まれたのに応じて
「立てたよ、リンク先は…」と誘導に使われるべき1000番が
無意味な「あぼーん」で潰されたし。
5デフォルトの名無しさん (ワッチョイ d18a-bYcA)
2017/10/28(土) 09:22:16.51ID:6bG+Py6x0 あぁあああもうポインタ全然分かんねえよおおお
6デフォルトの名無しさん (ワッチョイ 6b15-OCcV)
2017/10/28(土) 10:32:21.81ID:QoaQu2To0 前スレへのリンクがあって、スレタイにも番号がついてるわけで
1000いったら次スレなんて言われんでもわかるし望む者がいるから立っている
それだけのことで、別に何かする必要はないと思うな
1000いったら次スレなんて言われんでもわかるし望む者がいるから立っている
それだけのことで、別に何かする必要はないと思うな
7デフォルトの名無しさん (ワッチョイ 719f-WLyz)
2017/10/28(土) 13:13:54.08ID:cK0+9veY0 >>5
文字通り何かを指し示すものだよ。
文字通り何かを指し示すものだよ。
8デフォルトの名無しさん (ワッチョイ 21d2-Eec1)
2017/10/28(土) 13:25:50.21ID:NBGUhvqo0 data8<7-0> にdata32<31-00>の中のdata32<07-00>を抜き出して代入したい
data8 = data32 % 256 ;
と書いてもコンパイラが素直に推論してくれません
キャリー処理のコードっぽいものをつけてきやがります
どうしたらいいでしょうか?
data8 = data32 % 256 ;
と書いてもコンパイラが素直に推論してくれません
キャリー処理のコードっぽいものをつけてきやがります
どうしたらいいでしょうか?
9デフォルトの名無しさん (ワッチョイ 1312-nu9H)
2017/10/28(土) 13:30:10.44ID:z7fGPvzs0 あまりにも挫折者が多すぎる
教え方が悪いとか例題が少ないとかじゃねえのかと
変数とか言うふわふわしたモンがいきなり具体的なものになるから分かりにくいんじゃないのかね
メモリとかアドレスとかいきなし言われても分んねーよ、とかなるし
しまいにはアドレスの値だって気にかけなくなる
いきなり「変数は値と場所、二つの数字をもちます」とか言われると混乱するんだよ
教え方が悪いとか例題が少ないとかじゃねえのかと
変数とか言うふわふわしたモンがいきなり具体的なものになるから分かりにくいんじゃないのかね
メモリとかアドレスとかいきなし言われても分んねーよ、とかなるし
しまいにはアドレスの値だって気にかけなくなる
いきなり「変数は値と場所、二つの数字をもちます」とか言われると混乱するんだよ
10デフォルトの名無しさん (ワッチョイ 719f-WLyz)
2017/10/28(土) 13:51:05.54ID:cK0+9veY0 >>8
君の言いたいことがよくわからない。とりあえず全部日本語に翻訳してくれ。
君の言いたいことがよくわからない。とりあえず全部日本語に翻訳してくれ。
11デフォルトの名無しさん (ワッチョイ d171-6HSk)
2017/10/28(土) 14:04:12.56ID:4nXMq3qA0 先にメモリとアドレスから入ればいいのさ
12デフォルトの名無しさん (ワッチョイ d1eb-RMpS)
2017/10/28(土) 14:07:01.68ID:tCIUZaJu0 ビットが取れればいいだけなら、data8 や data32 の型を符号無しにするだけで
いけそうな気もするが、よく分からん
いけそうな気もするが、よく分からん
13デフォルトの名無しさん (ワッチョイ 21d2-Eec1)
2017/10/28(土) 14:11:40.74ID:NBGUhvqo0 両変数ともunsigned宣言はしています
14デフォルトの名無しさん (ワッチョイ 137f-wCMw)
2017/10/28(土) 14:16:17.83ID:MGjkWSIK015デフォルトの名無しさん (ワッチョイ d1b3-ZNPd)
2017/10/28(土) 14:18:02.62ID:fKJ32+jb0 printf で
data8 の実際の型にあった表示フォーマット使ってなかったとかのオチ?
(data8 の最上位ビットが足ってるとかサ-
data8 の実際の型にあった表示フォーマット使ってなかったとかのオチ?
(data8 の最上位ビットが足ってるとかサ-
16デフォルトの名無しさん (ワッチョイ 1be7-DNJs)
2017/10/28(土) 16:17:52.03ID:DjUYz3cS0 int *a = 0;
*a = 1;
これは入るけど1は入るん?0の番地って存在するん?
*a = 1;
これは入るけど1は入るん?0の番地って存在するん?
17デフォルトの名無しさん (ワッチョイ 7181-/MqV)
2017/10/28(土) 16:21:22.21ID:U1K93bKt0 >>16
ワープに成功しましたってメッセージが出る
ワープに成功しましたってメッセージが出る
18デフォルトの名無しさん (ワッチョイ 698a-dSdw)
2017/10/28(土) 16:29:25.72ID:MyIroYJQ0 >>16
0番地の住人に怒られる
0番地の住人に怒られる
19デフォルトの名無しさん (ワッチョイ 69f7-sKFa)
2017/10/28(土) 16:50:59.06ID:IMJtHdwY0 ぬるぽ
20デフォルトの名無しさん (ワッチョイ 9193-cGPg)
2017/10/28(土) 17:33:04.44ID:VIxhg0oq0 >>8
「リテラルの数値256での剰余だから結果の範囲は0-255、
unsigned char の範囲からはみ出す可能性はない」
ということまでコンパイラが見抜いてくれないってことだよね。
data8 = (unsigined char) data32;
てな具合に明示的なキャストで上手くいかんかな。
あるいはコンパイラの最適化オプションを強めにするか。
「リテラルの数値256での剰余だから結果の範囲は0-255、
unsigned char の範囲からはみ出す可能性はない」
ということまでコンパイラが見抜いてくれないってことだよね。
data8 = (unsigined char) data32;
てな具合に明示的なキャストで上手くいかんかな。
あるいはコンパイラの最適化オプションを強めにするか。
21デフォルトの名無しさん (ワッチョイ 21d2-Eec1)
2017/10/28(土) 17:42:28.64ID:NBGUhvqo022デフォルトの名無しさん (ワッチョイ 137c-Jgbf)
2017/10/28(土) 18:42:28.70ID:STqPADGQ0 リファクタリングして短いコード吐くかなと思ったら
がんがんループ展開されて元より長いコードを出すこともあるよね
がんがんループ展開されて元より長いコードを出すこともあるよね
23デフォルトの名無しさん (ワッチョイ 6b15-OCcV)
2017/10/28(土) 18:54:14.85ID:QoaQu2To0 希望的観測でタカをくくって結果を見もしないやつが一番悪い
24デフォルトの名無しさん (JP 0Hc5-xXVv)
2017/10/28(土) 20:47:38.03ID:VLfN62TLH25デフォルトの名無しさん (ワッチョイ 138a-whYl)
2017/10/28(土) 20:49:51.90ID:i6LcJWfh0 物理0と論理0が違うってのなら、仮想記憶なOSなら
普通そうだよ
普通そうだよ
26デフォルトの名無しさん (ワッチョイ 9ba1-qonp)
2017/10/28(土) 20:54:20.70ID:uE8IWkSS0 >>16
ヌルポインタに関しては、なんかややこしい事情があるみたいね。
規格ではいかなるオブジェクトとも一致しない特殊なポインタってことになってるようだけど、
自分が使ってる組込み用のコンパイラではただの 0 になる。しかも0番地から普通の RAM なんで、
値も普通に格納される。
どうなるかは確認するしかないんじゃなかろうか。
ヌルポインタに関しては、なんかややこしい事情があるみたいね。
規格ではいかなるオブジェクトとも一致しない特殊なポインタってことになってるようだけど、
自分が使ってる組込み用のコンパイラではただの 0 になる。しかも0番地から普通の RAM なんで、
値も普通に格納される。
どうなるかは確認するしかないんじゃなかろうか。
27デフォルトの名無しさん (ワッチョイ 9150-FcU6)
2017/10/28(土) 21:07:29.96ID:gfV3l07s0 >>20
32bitの範囲の数値を8bitの最大値で割るんだから
最大24bitの数値になるんじゃないの?
data8 = *(unsigined char*) &data32;
リトルエンディアンだと仮定するとこうなると思う
32bitの範囲の数値を8bitの最大値で割るんだから
最大24bitの数値になるんじゃないの?
data8 = *(unsigined char*) &data32;
リトルエンディアンだと仮定するとこうなると思う
28デフォルトの名無しさん (ワッチョイ 9150-FcU6)
2017/10/28(土) 21:24:13.85ID:gfV3l07s0 すみません
剰余を除算と勘違いしていました
無視してください
剰余を除算と勘違いしていました
無視してください
29デフォルトの名無しさん (ワッチョイ 719f-WLyz)
2017/10/28(土) 23:08:15.00ID:cK0+9veY0 >>16
あるけど今時のだいたいのOSではアクセスすると例外発生してプログラムが停止させられると思う。
そうでなくてもCPUによってアドレス0付近が特別扱いされている事が多いのでアクセスできたとしても要注意だったりする。
なのでそういうのが必要な時というのはOSそのものやデバイスドライバを作る時ぐらいしかないと考えて良い。
あるけど今時のだいたいのOSではアクセスすると例外発生してプログラムが停止させられると思う。
そうでなくてもCPUによってアドレス0付近が特別扱いされている事が多いのでアクセスできたとしても要注意だったりする。
なのでそういうのが必要な時というのはOSそのものやデバイスドライバを作る時ぐらいしかないと考えて良い。
30デフォルトの名無しさん (ワッチョイ 1be7-DNJs)
2017/10/28(土) 23:16:46.23ID:DjUYz3cS0 最近ヤフー知恵袋で初心者なんですけど将来プログラマになりたくてC言語やってみたいんですけどどうですかって
質問が多いがプログラマが時代の流行になってきたか?
質問が多いがプログラマが時代の流行になってきたか?
31デフォルトの名無しさん (ワッチョイ d18a-bYcA)
2017/10/28(土) 23:27:04.65ID:6bG+Py6x0 >>30
とりあえずみんなc言語やるんだな
とりあえずみんなc言語やるんだな
32デフォルトの名無しさん (ワッチョイ 1be7-DNJs)
2017/10/28(土) 23:47:39.21ID:DjUYz3cS0 >>31
おすすめの本やらおすすめの開発アプリやらおすすめのサイトやら学校のカリキュラムの評価やら色んな質問が多いしC言語やるならC#やった方が良いと思うんだけどなstring型ないだけで文字列処理とか大変だし不規則な空白・カンマ区切りとかの処理大変だし
そうゆうのを除外してくれる関数あるから楽なのになC言語はchar型で文字列操作してから処理しないとint型にしたりするのが大変だからな
おすすめの本やらおすすめの開発アプリやらおすすめのサイトやら学校のカリキュラムの評価やら色んな質問が多いしC言語やるならC#やった方が良いと思うんだけどなstring型ないだけで文字列処理とか大変だし不規則な空白・カンマ区切りとかの処理大変だし
そうゆうのを除外してくれる関数あるから楽なのになC言語はchar型で文字列操作してから処理しないとint型にしたりするのが大変だからな
33デフォルトの名無しさん (ワッチョイ 1312-nu9H)
2017/10/29(日) 00:35:52.85ID:CCoHsvZa0 義務教育のカリキュラムなもんで実用性の1側面に問題の作り易さもある
ペーパーテストにはうってつけだろC言語は
ペーパーテストにはうってつけだろC言語は
34デフォルトの名無しさん (ワッチョイ 9193-cGPg)
2017/10/29(日) 06:18:21.91ID:7nxu6Zdr0 教育だと一般性ってのも考えなきゃならないからね。
次々出てくる「Cを改良したネット時代の言語」とかの新しいやつも
10年たったら別の新言語と置き換わってるかも知れないし。
その点、Cなら古くさくても基本として残ってるだろう。
資格試験はまた別だがね。時々変えないと商売にならん。
次々出てくる「Cを改良したネット時代の言語」とかの新しいやつも
10年たったら別の新言語と置き換わってるかも知れないし。
その点、Cなら古くさくても基本として残ってるだろう。
資格試験はまた別だがね。時々変えないと商売にならん。
35デフォルトの名無しさん (JP 0Hc5-xXVv)
2017/10/29(日) 10:11:30.74ID:NWVP0NdTH Cは一人でやるとちょっとしたミスで手も足も出なくなるから論外
右も左も分からない初心者に基本はC言語とか言い出すヤツは老害
右も左も分からない初心者に基本はC言語とか言い出すヤツは老害
36てすと (ワッチョイ 9150-20SA)
2017/10/29(日) 10:24:35.50ID:S9avFBtQ0 package test;
class Test
{
public static void main(String[] args)
{
System.out.println("test");
}
}
class Test
{
public static void main(String[] args)
{
System.out.println("test");
}
}
37デフォルトの名無しさん (ワッチョイ e1c3-COZ0)
2017/10/29(日) 10:27:47.96ID:tz+cuQEW0 組込やOS開発まで視野に入れるとCが一つの王道なのは間違いない
初学者にすすめるべきかと聞かれるとそれはまた別の話
初学者にすすめるべきかと聞かれるとそれはまた別の話
38デフォルトの名無しさん (ワッチョイ ebe8-nu9H)
2017/10/29(日) 12:49:29.42ID:DRVQfTKK0 >>35
それはお前が無能てだけだろw Cなんて仕様がコンパクトだから簡単だわ
それはお前が無能てだけだろw Cなんて仕様がコンパクトだから簡単だわ
39デフォルトの名無しさん (ワッチョイ 0beb-nu9H)
2017/10/29(日) 13:08:01.23ID:48yStxT20 実際に使うには多くの仕様外な環境依存のことを理解しないといけないから
C言語を勉強してもC言語は使えない
C言語を勉強してもC言語は使えない
40デフォルトの名無しさん (ワッチョイ 719f-Akqv)
2017/10/29(日) 13:12:59.45ID:oFRxn/Jf0 しようがないな
41デフォルトの名無しさん (ワッチョイ ebe8-nu9H)
2017/10/29(日) 13:24:51.26ID:DRVQfTKK0 アホか。それは言語の話じゃねーだろ
42デフォルトの名無しさん (ワッチョイ 719f-Akqv)
2017/10/29(日) 13:36:30.43ID:oFRxn/Jf0 環境依存の部分はどんな言語でも影響受けるから結局は覚える事になるんじゃないのかな
43デフォルトの名無しさん (ワッチョイ e1c3-bYcA)
2017/10/29(日) 16:45:37.57ID:Qj29lsVR0 まずはcでゲーム作ってみようかな
44デフォルトの名無しさん (ワッチョイ 1be7-DNJs)
2017/10/29(日) 17:07:01.40ID:eJZsCyOV0 win32で作ってみる?
45デフォルトの名無しさん (ワッチョイ 7116-rVGZ)
2017/10/29(日) 17:13:50.83ID:X7Kr9qJt0 OpenGLの方がいい
46デフォルトの名無しさん (ワッチョイ 7181-/MqV)
2017/10/29(日) 17:17:11.04ID:TdUzVMA70 まずコンソールアプリで
47デフォルトの名無しさん (ワッチョイ 1be7-DNJs)
2017/10/29(日) 22:58:38.22ID:eJZsCyOV0 その前に開発環境を整えるのが大変だわプログラミングはできるけどそれぞれ出してる開発アプリがあるしその中で開発ツールだっけXNAやらwin32やらで解らんことばっかりや
48デフォルトの名無しさん (ワッチョイ d18a-bYcA)
2017/10/29(日) 23:13:28.81ID:cx6N475a0 >>47
ほんそれ
ほんそれ
49デフォルトの名無しさん (ワッチョイ e1c3-COZ0)
2017/10/29(日) 23:38:03.44ID:tz+cuQEW0 大抵「C言語は何でも出来る」(嘘ではない)
に騙されるパターンだね
に騙されるパターンだね
50デフォルトの名無しさん (ワッチョイ 138a-whYl)
2017/10/29(日) 23:48:24.03ID:XyYI0EpP0 ビットローテイトってどう書くんですかね
51デフォルトの名無しさん (ワッチョイ f1ca-OCcV)
2017/10/30(月) 01:28:40.64ID:ObFQilr40 キャリーを含む9bitローテートか
それとも含まない8bitローテートか
それとも含まない8bitローテートか
52デフォルトの名無しさん (ワッチョイ 138a-whYl)
2017/10/30(月) 02:41:46.16ID:z+u7+Cu/0 ボローがある奴で
53デフォルトの名無しさん (ワッチョイ 9193-cGPg)
2017/10/30(月) 04:58:13.48ID:oEYvBlvb0 性能優先ならインラインアセンブリでCPUのローテート命令かねぇ。
移植性が大事なら正直にマスクしてシフトしてビットorで重ねる。
8bitや16bitならテーブル使えば両立できるかな。
移植性が大事なら正直にマスクしてシフトしてビットorで重ねる。
8bitや16bitならテーブル使えば両立できるかな。
54デフォルトの名無しさん (ワッチョイ 41b3-YANY)
2017/10/30(月) 13:11:03.28ID:Oa6tPdXR0 苦C勉強してるんだけどファイルの辺りって重要?
あんま考えずにやってたんだが
あんま考えずにやってたんだが
55デフォルトの名無しさん (ササクッテロラ Sp9d-jmG0)
2017/10/30(月) 13:22:56.64ID:LaVtZ0d2p ストリームの概念はUNIX譲りの万能概念だから未来永劫絡んで来るぞ。
56デフォルトの名無しさん (アウーイモ MM95-bYcA)
2017/10/30(月) 13:37:21.46ID:/ejdYHINM fopen
fclose
fclose
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 空自機レーダー照射、音声データ公開 中国 [蚤の市★]
- 【和訳付き】レーダー照射問題 中国軍と自衛隊との“音声データ”公開 中国国営メディア [♪♪♪★]
- 「中国側も日本機のレーダーを感知していた」 中国メディアが報道 [♪♪♪★]
- 日銀「歴史的」利上げ迫る 35年ぶりの年間上げ幅、0.5%の壁を突破 [蚤の市★]
- 堀江貴文、キャッシュレス非対応の店にモヤッ 『PayPay』立ち上げの人物にまさかの直談判「現金決済しかできないんだけど…」 [冬月記者★]
- 【おこめ券】鈴木農相 米価維持の意図「一切ない」★3 [ぐれ★]
- 【悲惨】中国軍が自衛隊に「事前通告」し自衛隊も返答した音声が公開されてしまうwwwこれは高市チェックアウトゕ [597533159]
- 【悲惨】中国軍が自衛隊に「事前通告」し自衛隊も返答した音声が公開されてしまうwwwこれは高市チェックアウトゕ★2 [597533159]
- 現役JKのお茶会スレ( ¨̮ )︎︎𖠚ᐝ180
- 廣井きくり「でへへへ、ぼっちちゃーん」サワサワ ぼっち「あ、あの…」星歌「…」
- 【悲報】JA「全然米が売れなくて倉庫を圧迫してる。助けて!」米卸売り業者「安売りしたら赤字になる…助けて!」 [802034645]
- 中国の日本向けレアアースの輸出止まる、高市のせいで日本終了のお知らせ [931948549]
