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:pAogLeJi0553デフォルトの名無しさん (ワッチョイ 0775-forR)
2017/11/29(水) 19:31:59.94ID:bodUKsOx0 >配列名 arr は &arr[0] (先頭の要素へのポインタ)
>配列名に&演算子を作用させた &arr は配列全体(10要素の配列)へのポインタ
>…と解釈される、とANSIで決まった、と望洋さんの本に載ってる。
なるほどな
>配列名に&演算子を作用させた &arr は配列全体(10要素の配列)へのポインタ
>…と解釈される、とANSIで決まった、と望洋さんの本に載ってる。
なるほどな
554デフォルトの名無しさん (ワッチョイ a77f-8Ex9)
2017/11/29(水) 19:54:00.64ID:Xa+98JY60 >>552
>6.5.9 等価演算子
>(中略)
>制約??次のいずれかの条件を満たさなければならない。
>(中略)
>-両オペランドとも適合する型の修飾版又は非修飾版へのポインタである。
「〜型」と「〜型の配列型」は適合しないから、ポインタの比較は未定義
>6.5.9 等価演算子
>(中略)
>制約??次のいずれかの条件を満たさなければならない。
>(中略)
>-両オペランドとも適合する型の修飾版又は非修飾版へのポインタである。
「〜型」と「〜型の配列型」は適合しないから、ポインタの比較は未定義
555デフォルトの名無しさん (ワッチョイ 7f80-xsLR)
2017/11/29(水) 20:09:41.35ID:/RfTzpPk0 >>552
型が異なったら、比較できない
例えば、アドレス100番地から10バイトと、
アドレス100番地から20バイトでは、全然違う
仮に、同じバイト数だとしても、中身・内容が異なるし、比較する事に意味がない
型が異なったら、比較できない
例えば、アドレス100番地から10バイトと、
アドレス100番地から20バイトでは、全然違う
仮に、同じバイト数だとしても、中身・内容が異なるし、比較する事に意味がない
556デフォルトの名無しさん (ワッチョイ 5ff9-uRPb)
2017/11/29(水) 22:15:27.21ID:QTG/JUE+0 >>542
ファイルの破損というのがファイルの中身の論理レベルの話なら正常なファイルとみなされるはずだし、ファイルシステムレベルの破損やメディアの物理的破損なら実装依存じゃないかな。
ファイルの破損というのがファイルの中身の論理レベルの話なら正常なファイルとみなされるはずだし、ファイルシステムレベルの破損やメディアの物理的破損なら実装依存じゃないかな。
557デフォルトの名無しさん (ワッチョイ 5ff9-uRPb)
2017/11/29(水) 22:18:50.37ID:QTG/JUE+0 >>555
いま話題にしているのはarrと&arr[0]の比較であって、これらはどちらも比較演算子のオペランドとしてはint*型として評価されて型も値も一致すると思ってたけど、どうだろう。
いま話題にしているのはarrと&arr[0]の比較であって、これらはどちらも比較演算子のオペランドとしてはint*型として評価されて型も値も一致すると思ってたけど、どうだろう。
558デフォルトの名無しさん (ワッチョイ 5ff9-uRPb)
2017/11/29(水) 22:20:43.77ID:QTG/JUE+0 >>557
間違えた。arrと&arrね。&arrもint*型のはず、だと思う。
間違えた。arrと&arrね。&arrもint*型のはず、だと思う。
559デフォルトの名無しさん (ワッチョイ a77f-8Ex9)
2017/11/29(水) 22:42:55.53ID:Xa+98JY60 実際にコンパイルすれば型不一致のwarning出るのに、なんでそういう発想になるんだろう
不思議だわ
不思議だわ
560デフォルトの名無しさん (ワッチョイ 3d93-kA4S)
2017/11/30(木) 06:56:06.98ID:VGvsvH1F0561デフォルトの名無しさん (ワッチョイ 4af9-4cvy)
2017/11/30(木) 07:49:26.15ID:T6nL/USz0 >>560
色々と記憶違いをしてたよ。サンクス。
色々と記憶違いをしてたよ。サンクス。
562デフォルトの名無しさん (ワッチョイ a66e-hJGX)
2017/11/30(木) 10:29:35.42ID:/QNJXUpA0563デフォルトの名無しさん (ワッチョイ 1e8a-YNua)
2017/11/30(木) 10:41:32.87ID:5xc99BMT0 arrは&arr[0]の糖衣構文なので型は同じint*だろ
564デフォルトの名無しさん (アウアウカー Sa55-kbEZ)
2017/11/30(木) 10:46:30.46ID:Rc2VGt53a 糖衣構文なのになんでわかりづらくなってるんすかね
565デフォルトの名無しさん (ササクッテロル Spbd-QD6R)
2017/11/30(木) 10:48:13.06ID:I+JVe+Ukp まあ、sizeofしたら分かるよ。
566デフォルトの名無しさん (ワッチョイ 1e8a-YNua)
2017/11/30(木) 10:53:47.57ID:5xc99BMT0 arr=&arr[0]≠&arr
567デフォルトの名無しさん (ワッチョイ a5ea-7XMe)
2017/11/30(木) 10:56:17.41ID:CwUb7XwN0 代入左辺の int* に渡す右辺
関数引数の int* に渡す引数
ここに渡す際に先頭要素へのポインタを与えてるだけで
変数そのものはポインタにはなっていなくて配列のまま
関数引数の int* に渡す引数
ここに渡す際に先頭要素へのポインタを与えてるだけで
変数そのものはポインタにはなっていなくて配列のまま
568デフォルトの名無しさん (ササクッテロル Spbd-QD6R)
2017/11/30(木) 11:01:32.20ID:I+JVe+Ukp arrは要素10持つ配列の先頭アドレスを返す、サイズはint 10個分
&arr[0]は、配列要素0番目のアドレスを返す、サイズはint 1個分
先頭アドレスが欲しいだけなら型キャストして使えばいい。
代入に使うならサイズが違うから上手く行かない。
&arr[0]は、配列要素0番目のアドレスを返す、サイズはint 1個分
先頭アドレスが欲しいだけなら型キャストして使えばいい。
代入に使うならサイズが違うから上手く行かない。
569デフォルトの名無しさん (ワッチョイ 1e8a-YNua)
2017/11/30(木) 11:10:18.71ID:5xc99BMT0 arr = &arr[0] ≠ &arr
sizeof(&arr) = sizeof(&arr[0]) ≠ sizeof(arr)
sizeof(&arr) = sizeof(&arr[0]) ≠ sizeof(arr)
570デフォルトの名無しさん (ワッチョイ a66e-hJGX)
2017/11/30(木) 12:23:05.77ID:/QNJXUpA0 >>563
いーや違う
§6.3.2 Other operands
Except when it is the operand of the sizeof operator, or the unary & operator, or is a string literal used to initialize an array, an expression that has type ‘‘array of type'' is
converted to an expression with type ‘‘pointer to type ' that points to the initial element of the array object and is not an lvalue.
あくまで配列からポインタへconvertedつまり元の型int[10]とは違う型int*への変換だ
いーや違う
§6.3.2 Other operands
Except when it is the operand of the sizeof operator, or the unary & operator, or is a string literal used to initialize an array, an expression that has type ‘‘array of type'' is
converted to an expression with type ‘‘pointer to type ' that points to the initial element of the array object and is not an lvalue.
あくまで配列からポインタへconvertedつまり元の型int[10]とは違う型int*への変換だ
571デフォルトの名無しさん (ブーイモ MMc9-ckDd)
2017/11/30(木) 12:39:07.57ID:wmrrhfKqM C言語は覚えることが少ないので初心者にお勧めです👈
572デフォルトの名無しさん (アウアウカー Sa55-iHXH)
2017/11/30(木) 12:58:49.70ID:7wMQk3WFa そ、そうかあ?
573デフォルトの名無しさん (ドコグロ MM12-PHvg)
2017/11/30(木) 13:08:48.69ID:CNBdn6EpM まあ他の言語よりはね
574デフォルトの名無しさん (ワッチョイ 5d8a-J59I)
2017/11/30(木) 15:43:07.77ID:AraxvjGC0 氏名、生年月日を入力させて、年齢を出力する。(ここまではいい)
再度起動時に、同一氏名入力時は生年月日と年齢を出力する(これがわからん)
方向性がさっぱり見えない、どうすりゃいいの?
http://codepad.org/BVM0iMi4
再度起動時に、同一氏名入力時は生年月日と年齢を出力する(これがわからん)
方向性がさっぱり見えない、どうすりゃいいの?
http://codepad.org/BVM0iMi4
575デフォルトの名無しさん (ワッチョイ a5ea-7XMe)
2017/11/30(木) 15:49:01.37ID:CwUb7XwN0 入力された氏名のファイルを探す
無い→ファイル作って 入力した生年月日を書き出すとともに変数に覚えておく
有る→ファイルから生年月日を変数に読み込む
↑の処理で変数で覚えている生年月日から年齢を求め表示する
無い→ファイル作って 入力した生年月日を書き出すとともに変数に覚えておく
有る→ファイルから生年月日を変数に読み込む
↑の処理で変数で覚えている生年月日から年齢を求め表示する
576デフォルトの名無しさん (ワッチョイ a5ea-7XMe)
2017/11/30(木) 15:50:35.20ID:CwUb7XwN0 異なる氏名の分だけファイルを作っちまうけどお手軽
577デフォルトの名無しさん (ワッチョイ 5d8a-J59I)
2017/11/30(木) 15:58:14.77ID:AraxvjGC0 if文&fread,fwriteでなんとかなります?
あと出来ればリンク先のソースコードにダメだし貰えると嬉しい
あと出来ればリンク先のソースコードにダメだし貰えると嬉しい
578デフォルトの名無しさん (ブーイモ MM8e-McTX)
2017/11/30(木) 17:12:52.14ID:hDUXhrlWM ファイルが一個しか使えないんなら、
その中に何の情報をどんなフォーマットで入れるか先に設計しろ。
その中に何の情報をどんなフォーマットで入れるか先に設計しろ。
579560 (ワッチョイ 3d93-kA4S)
2017/11/30(木) 17:54:17.29ID:VGvsvH1F0 >>562 言葉は悪いけど言う通りだね。
俺が書いたのは arr て名前が演算の対象として単独に現れたときに
自動的にポインタの値に変換される場合の値と型のことだった。
arr 自体はあくまで配列だから int[10]
この名前が関数の引数とかで使われた場合 &arr[0] と同じになる。
配列名は隙あらば「先頭要素へのポインタ」になりたがる。
こんな感じでよろしいか? (我ながらぎごちないけど)
俺が書いたのは arr て名前が演算の対象として単独に現れたときに
自動的にポインタの値に変換される場合の値と型のことだった。
arr 自体はあくまで配列だから int[10]
この名前が関数の引数とかで使われた場合 &arr[0] と同じになる。
配列名は隙あらば「先頭要素へのポインタ」になりたがる。
こんな感じでよろしいか? (我ながらぎごちないけど)
580デフォルトの名無しさん (アウアウカー Sa55-iHXH)
2017/11/30(木) 18:07:14.42ID:rYNpG8Zla >>577
fprintf()で一行にカンマ区切りで名前と生年月日出した方が扱いやすいのでは?
で、処理の順序としてはこうだ。
1. 名前入力。
2. 入力された名前がファイルの中にあったら一緒に入っている生年月日を出して終了。
3. 生年月日入力。
4. 名前と生年月日をファイルに追加。
5. 終了。
ファイルアクセスは2では読み出ししかせず開きっぱなしにしないでクローズする。
4では追加書き込みだけしてクローズだ。
fprintf()で一行にカンマ区切りで名前と生年月日出した方が扱いやすいのでは?
で、処理の順序としてはこうだ。
1. 名前入力。
2. 入力された名前がファイルの中にあったら一緒に入っている生年月日を出して終了。
3. 生年月日入力。
4. 名前と生年月日をファイルに追加。
5. 終了。
ファイルアクセスは2では読み出ししかせず開きっぱなしにしないでクローズする。
4では追加書き込みだけしてクローズだ。
581デフォルトの名無しさん (ワッチョイ 398a-fjL1)
2017/11/30(木) 18:07:34.67ID:kZZqjgS10 OLE複合ファイルで保存すればよろし
582デフォルトの名無しさん (ブーイモ MM8e-ckDd)
2017/11/30(木) 18:30:11.56ID:RwvI386YM 構造体配列をバイナリでrw
583デフォルトの名無しさん (ワッチョイ a66e-hJGX)
2017/11/30(木) 21:02:57.60ID:/QNJXUpA0584デフォルトの名無しさん (アウアウカー Sa55-iHXH)
2017/11/30(木) 21:56:39.93ID:xcZwpJOTa XMLで
なんていうと余計にややこしくなって大変な事になるなw
なんていうと余計にややこしくなって大変な事になるなw
585デフォルトの名無しさん (ワッチョイ 697f-GQwd)
2017/11/30(木) 22:05:39.04ID:ewUYSdOO0586デフォルトの名無しさん (ワッチョイ a66e-hJGX)
2017/12/01(金) 06:29:54.45ID:jGNBP26P0587デフォルトの名無しさん (ワッチョイ 697f-GQwd)
2017/12/01(金) 06:50:45.43ID:NXDNhmZv0 宣言とか、演算子出てこないことぐらいあるだろ
初期化子つきの宣言に出てくる=が代入演算子だとでも思ってんのか?
初期化子つきの宣言に出てくる=が代入演算子だとでも思ってんのか?
588デフォルトの名無しさん (ドコグロ MMb1-YtI1)
2017/12/01(金) 07:18:53.95ID:NIbF5rwZM589デフォルトの名無しさん (ワッチョイ b6eb-1noQ)
2017/12/01(金) 09:10:23.44ID:IMGPh1jC0590デフォルトの名無しさん (ワッチョイ a66e-hJGX)
2017/12/01(金) 09:50:32.00ID:jGNBP26P0591デフォルトの名無しさん (ワッチョイ a5ea-7XMe)
2017/12/01(金) 10:53:53.03ID:j3o2JE0u0 int arr[10];
int *p = arr; /* このときの arr の解釈 */
を指してるのだと思うの。
ここで出てくる = は代入演算子じゃないぜ って
int *p = arr; /* このときの arr の解釈 */
を指してるのだと思うの。
ここで出てくる = は代入演算子じゃないぜ って
592デフォルトの名無しさん (ブーイモ MMc9-KyLD)
2017/12/01(金) 11:01:39.32ID:y1pVtdhXM 我輩は宣言子と初期化子の間の=である。名前はまだ無い。
593デフォルトの名無しさん (ワッチョイ a66e-hJGX)
2017/12/01(金) 11:08:59.34ID:jGNBP26P0 >>589
初期化宣言子 init-declarator
初期化宣言子 init-declarator
594デフォルトの名無しさん (ワッチョイ b6eb-1noQ)
2017/12/01(金) 12:08:20.94ID:IMGPh1jC0 >>593
なるほど、情報サンクスです。
C++だと、同じものが代入演算子と称されていて。コンストラクタ内で代入演算子をオーバーロードすべし、
のような言い方をよく見かけますので。Cでも同じ呼び方をするのかと思ってました。
なるほど、情報サンクスです。
C++だと、同じものが代入演算子と称されていて。コンストラクタ内で代入演算子をオーバーロードすべし、
のような言い方をよく見かけますので。Cでも同じ呼び方をするのかと思ってました。
595デフォルトの名無しさん (ブーイモ MMc9-KyLD)
2017/12/01(金) 12:17:22.80ID:y1pVtdhXM いやまて init-declarator は、"宣言子"か"宣言子=初期化子"のことだぞ
596デフォルトの名無しさん (ワッチョイ b6eb-1noQ)
2017/12/01(金) 12:22:41.61ID:IMGPh1jC0597デフォルトの名無しさん (ワッチョイ a66e-hJGX)
2017/12/01(金) 13:24:35.76ID:jGNBP26P0 >>595
s/"宣言子"か//
s/"宣言子"か//
598デフォルトの名無しさん (ワッチョイ 398a-fjL1)
2017/12/01(金) 14:30:51.38ID:HUofIpvH0 貞子とか初子とか
599デフォルトの名無しさん (スップ Sd0a-ygIL)
2017/12/01(金) 15:44:26.68ID:0Iysip4/d プログラミング初心者です
車のタコメーターをフルカラーのディスプレイを使って作りたいのですが、どうすれば良いのかが全く分かりません
C言語は計算機内で式の答えを演算する程度なら使えますが、ハードを制御したりはできないです(Arduinoなら少し弄りました)
C言語で作れるのかも分からないので、簡単なところから教えてください
エンジン回転数のパルス信号は取れてます
車のタコメーターをフルカラーのディスプレイを使って作りたいのですが、どうすれば良いのかが全く分かりません
C言語は計算機内で式の答えを演算する程度なら使えますが、ハードを制御したりはできないです(Arduinoなら少し弄りました)
C言語で作れるのかも分からないので、簡単なところから教えてください
エンジン回転数のパルス信号は取れてます
600デフォルトの名無しさん (ワッチョイ 398a-fjL1)
2017/12/01(金) 15:55:36.34ID:HUofIpvH0 ターゲット環境は?
601デフォルトの名無しさん (ワッチョイ a66e-hJGX)
2017/12/01(金) 15:56:55.06ID:jGNBP26P0 Ardudinoを弄ったことがあってハード制御ができない?
パルス信号を取れるっていうのは、オシロスコープか何かで確認できたってことか?
・・・もしかして、こういうことか?
その信号をプログラムで読み取るには、どこの端子に繋ぐのかとか、
信号のレベルの合わせ方とか、そういうことがわからんのか?
パルス信号を取れるっていうのは、オシロスコープか何かで確認できたってことか?
・・・もしかして、こういうことか?
その信号をプログラムで読み取るには、どこの端子に繋ぐのかとか、
信号のレベルの合わせ方とか、そういうことがわからんのか?
602デフォルトの名無しさん (ワッチョイ a5ea-7XMe)
2017/12/01(金) 16:01:06.60ID:j3o2JE0u0 マイコンに表示装置とかをくっつけて
デジタコを0から自作したいってことなのかな?
言語外の相談のほうが重要度高いような気もする
デジタコを0から自作したいってことなのかな?
言語外の相談のほうが重要度高いような気もする
603デフォルトの名無しさん (スップ Sd0a-ygIL)
2017/12/01(金) 16:13:56.45ID:0Iysip4/d 信号→マイコン→処理
は分かります
その処理を今までPC上に表示させていた物をディスプレイに↓のようにカッコよく表示させるにはどうすれば良いのかを教えてほしいのです
https://i.imgur.com/S3sahkU.jpg
は分かります
その処理を今までPC上に表示させていた物をディスプレイに↓のようにカッコよく表示させるにはどうすれば良いのかを教えてほしいのです
https://i.imgur.com/S3sahkU.jpg
604デフォルトの名無しさん (スップ Sd0a-ygIL)
2017/12/01(金) 16:15:42.98ID:0Iysip4/d 何から調べていいのかも分からない状態です
ど素人ですみません…
ど素人ですみません…
605デフォルトの名無しさん (ワッチョイ 5db3-JjO2)
2017/12/01(金) 16:54:04.97ID:kRZ1SJ+P0 そのディスプレイとやら仕様書見せてくれなきゃ
なんとも答えようがなくない?
なんとも答えようがなくない?
606デフォルトの名無しさん (アウアウカー Sa55-iHXH)
2017/12/01(金) 16:56:05.30ID:y5AhnBkya607デフォルトの名無しさん (スップ Sd0a-ygIL)
2017/12/01(金) 16:56:22.84ID:0Iysip4/d 言語もバードも指定は無いです
寧ろ何を使えば良いのかを教えて欲しいです
寧ろ何を使えば良いのかを教えて欲しいです
608デフォルトの名無しさん (スップ Sd0a-ygIL)
2017/12/01(金) 16:59:45.04ID:0Iysip4/d ターゲットがよく分からないのですが、コードはUNIX系のOSのemacsで書いてます
Windows上で作ったプログラムを動かしたことはあまりないですね
Windows上で作ったプログラムを動かしたことはあまりないですね
609デフォルトの名無しさん (ワッチョイ a66e-hJGX)
2017/12/01(金) 17:09:00.66ID:jGNBP26P0 ディスプレイのつなぎ方がわからんのか?
つないであるディスプレイへのコマンドの送り方がわからんのか?
つないであるディスプレイへのコマンドの送り方がわからんのか?
610デフォルトの名無しさん (ワッチョイ 3d93-kA4S)
2017/12/01(金) 17:42:29.56ID:jA0BeSqZ0 >>599
PCのウィンドウ環境上でウィンドウを開いてグラフィック表示って問題なら、
環境次第でここでも分かると思うけど…。
部品としての液晶やLEDのパネルのハードウェア制御ってことになると、
まずはどの部品を使うのか、って話になるな。
PCのウィンドウ環境上でウィンドウを開いてグラフィック表示って問題なら、
環境次第でここでも分かると思うけど…。
部品としての液晶やLEDのパネルのハードウェア制御ってことになると、
まずはどの部品を使うのか、って話になるな。
611デフォルトの名無しさん (ブーイモ MMc9-ckDd)
2017/12/01(金) 18:11:29.04ID:5uJXNlV4M なにがベストかと聞かれても答えにくい質問だな。
自分ならデータを無線で飛ばしてタブレットでみれるwebシステムを検討したい案件だが。
自分ならデータを無線で飛ばしてタブレットでみれるwebシステムを検討したい案件だが。
612デフォルトの名無しさん (JP 0Hb5-McTX)
2017/12/01(金) 18:28:55.76ID:LYbXDWPHH そもそもの目的は?勉強とかお遊び?
613デフォルトの名無しさん (ブーイモ MM81-kYsf)
2017/12/01(金) 18:35:32.61ID:6HJgPekDM 消費電力、サイズ制限、予算諸々考えてどの程度のハードが用意出来るかって所から
linuxやwinが動くようなリッチな環境が用意出来るなら
GUI部はCじゃなくても良くねってのが正直な感想
linuxやwinが動くようなリッチな環境が用意出来るなら
GUI部はCじゃなくても良くねってのが正直な感想
614デフォルトの名無しさん (ワッチョイ 5db3-7XMe)
2017/12/01(金) 18:39:21.60ID:kbDZQVhk0 BT接続できるOBD2アダプタ(点検器具端子)買ってアンドロ端末に表示するのがお手軽かも
615デフォルトの名無しさん (ブーイモ MM81-KyLD)
2017/12/01(金) 19:09:42.97ID:qQWTYDNZM >>597
おれも少し変だとは思うけど、企画書には、宣言子単独が init-declarator に含まれてるんだよ
おれも少し変だとは思うけど、企画書には、宣言子単独が init-declarator に含まれてるんだよ
616デフォルトの名無しさん (ワッチョイ 3d9f-JjO2)
2017/12/01(金) 19:38:44.88ID:quTLstwT0 >>608
> ターゲットがよく分からないのですが、コードはUNIX系のOSのemacsで書いてます
根本的に分かってないようだが、「ターゲット」ってのはお前が決めるんだよ。
そして既にコードを書いていて、そこにLCDを接続したいだけなら、その環境を言えよ。
> ターゲットがよく分からないのですが、コードはUNIX系のOSのemacsで書いてます
根本的に分かってないようだが、「ターゲット」ってのはお前が決めるんだよ。
そして既にコードを書いていて、そこにLCDを接続したいだけなら、その環境を言えよ。
617デフォルトの名無しさん (スップ Sdea-DJnL)
2017/12/01(金) 20:25:33.69ID:01uXYhT3d LCD付ARMのlinuxキットでやれ
618デフォルトの名無しさん (ワッチョイ 697f-GQwd)
2017/12/01(金) 20:27:16.42ID:NXDNhmZv0619デフォルトの名無しさん (ワッチョイ 9e9e-GQwd)
2017/12/01(金) 20:54:03.81ID:HgVhW4BC0 >>603
>信号→マイコン→処理
>は分かります
で、信号は取れたとか言ってるんだから対象の物理的扱いはわかっているんだろ。
それをどんなマイコンにどう繋ぐかだ。出来合いのマイコン基板を買ってきて
それに繋げるのか、基板から自作するのか
>信号→マイコン→処理
>は分かります
で、信号は取れたとか言ってるんだから対象の物理的扱いはわかっているんだろ。
それをどんなマイコンにどう繋ぐかだ。出来合いのマイコン基板を買ってきて
それに繋げるのか、基板から自作するのか
620デフォルトの名無しさん (ワッチョイ a66e-hJGX)
2017/12/01(金) 21:25:55.70ID:jGNBP26P0621デフォルトの名無しさん (ワッチョイ 5db3-7XMe)
2017/12/01(金) 21:37:37.37ID:kbDZQVhk0 >>583 へのカウンターじゃないの?
583では 変換が走るのは 特定の演算子の対象 としてるけど
初期化においても変換が走ってる
この記述中では演算子はなくて、該当変数は演算子のオペランドになっていない って
583では 変換が走るのは 特定の演算子の対象 としてるけど
初期化においても変換が走ってる
この記述中では演算子はなくて、該当変数は演算子のオペランドになっていない って
622デフォルトの名無しさん (ワッチョイ 697f-GQwd)
2017/12/01(金) 21:39:28.94ID:NXDNhmZv0 >>620
ん?
配列型を持つ左辺値は特定のケースを除いてポインタ型に変換されるという
規格に明記してある話を理解してもらえればそれで十分だよ?
初期化子には演算子が含まれないこともあるって理解できたんだよね
なら、それで良いよ
ん?
配列型を持つ左辺値は特定のケースを除いてポインタ型に変換されるという
規格に明記してある話を理解してもらえればそれで十分だよ?
初期化子には演算子が含まれないこともあるって理解できたんだよね
なら、それで良いよ
623デフォルトの名無しさん (ワッチョイ a66e-hJGX)
2017/12/01(金) 21:43:38.60ID:jGNBP26P0624デフォルトの名無しさん (ワッチョイ 5db3-7XMe)
2017/12/01(金) 21:46:07.65ID:kbDZQVhk0625デフォルトの名無しさん (ワッチョイ 697f-GQwd)
2017/12/01(金) 22:00:29.26ID:NXDNhmZv0626デフォルトの名無しさん (ワッチョイ 697f-GQwd)
2017/12/01(金) 22:05:59.37ID:NXDNhmZv0627デフォルトの名無しさん (ワッチョイ 5db3-7XMe)
2017/12/01(金) 22:11:15.92ID:kbDZQVhk0628デフォルトの名無しさん (ワッチョイ a66e-hJGX)
2017/12/01(金) 22:19:35.93ID:jGNBP26P0629デフォルトの名無しさん (ワッチョイ 697f-GQwd)
2017/12/01(金) 22:49:05.07ID:NXDNhmZv0 6.3.2.1 Lvalues, arrays, and function designators
An lvalue is an expression with an object type or an incomplete type other than void
6.8.3 Expression and null statements
expression-statement: expressionopt ;
arr;は式文、arrは式(左辺値)
よって、>>570の規則に従って変換される
An lvalue is an expression with an object type or an incomplete type other than void
6.8.3 Expression and null statements
expression-statement: expressionopt ;
arr;は式文、arrは式(左辺値)
よって、>>570の規則に従って変換される
630デフォルトの名無しさん (ワッチョイ a66e-hJGX)
2017/12/01(金) 22:57:47.71ID:jGNBP26P0 >>629
それはおかしいぞ
arrという部分式を評価中に、それがどんな文脈の作用対象となるかは
予見しないのがCのポリシーで、だからこそ式arrはlvalueを生じる
その後lvalueからvalue of an expressionへの変換を要請する文脈を経ずに
シーケンスポイントとなっているそのプログラム片のどこに
アドレス計算が生じうるんだよ
それはおかしいぞ
arrという部分式を評価中に、それがどんな文脈の作用対象となるかは
予見しないのがCのポリシーで、だからこそ式arrはlvalueを生じる
その後lvalueからvalue of an expressionへの変換を要請する文脈を経ずに
シーケンスポイントとなっているそのプログラム片のどこに
アドレス計算が生じうるんだよ
631デフォルトの名無しさん (スプッッ Sd12-ygIL)
2017/12/01(金) 22:59:25.50ID:UqjXH8z4d632デフォルトの名無しさん (ワッチョイ a66e-hJGX)
2017/12/01(金) 23:03:12.88ID:jGNBP26P0 PIOのディレクションレジスタを出力に設定してマスクパターンを指定しておき、
それからコマンドを書き込んでストローブのパルスを作って。。。
それからコマンドを書き込んでストローブのパルスを作って。。。
633デフォルトの名無しさん (ワッチョイ 697f-GQwd)
2017/12/01(金) 23:07:47.82ID:NXDNhmZv0 >>630
ポリシーとかじゃなくて規格の話をしてくれない?
配列型の左辺値は特定の場所以外で現れた場合に、変換されるという規格なの
演算子を伴わない場合は変換されないというのなら、その規格を明示して
左辺値ですらないというのであれば、その根拠となる規格を示して
人に説明求める割に、自分の論拠が想像ってのはどうかと思うよ
ポリシーとかじゃなくて規格の話をしてくれない?
配列型の左辺値は特定の場所以外で現れた場合に、変換されるという規格なの
演算子を伴わない場合は変換されないというのなら、その規格を明示して
左辺値ですらないというのであれば、その根拠となる規格を示して
人に説明求める割に、自分の論拠が想像ってのはどうかと思うよ
634デフォルトの名無しさん (ワッチョイ 3d9f-JjO2)
2017/12/01(金) 23:12:55.57ID:quTLstwT0635デフォルトの名無しさん (スプッッ Sd12-ygIL)
2017/12/01(金) 23:20:03.85ID:UqjXH8z4d >>634
ありがとうございました
ありがとうございました
636デフォルトの名無しさん (ワッチョイ ea33-MbHU)
2017/12/01(金) 23:49:36.73ID:P20tw7a40 >>633
> 配列型の左辺値は特定の場所以外で現れた場合に、変換されるという規格なの
630 じゃないけど、そっちこそ規格のどこ見て言ってるの?
N1570 6. Conversion で演算子オペランドになったときの変換は確認できるけど、
式文を含めて「現れた」だけで変換されるという記述は見つけられない。
> 配列型の左辺値は特定の場所以外で現れた場合に、変換されるという規格なの
630 じゃないけど、そっちこそ規格のどこ見て言ってるの?
N1570 6. Conversion で演算子オペランドになったときの変換は確認できるけど、
式文を含めて「現れた」だけで変換されるという記述は見つけられない。
637636 (ワッチョイ ea33-MbHU)
2017/12/01(金) 23:50:50.61ID:P20tw7a40 あ、ごめん。 6. Conversion じゃなくて 6.3 Conversions ね。
638デフォルトの名無しさん (ワッチョイ a66e-hJGX)
2017/12/02(土) 00:14:21.15ID:mWFcFWTj0 >>633
質問に質問で返さないでくれない?
arr;というプログラム片のどこにアドレス計算が生じうるの?
全く無用と思える操作を強制する根拠法令を示しなさいよ
全く無用と思わない、あんたの思考回路でもいいよ
こちとら規格しか聞く耳持たないとか言わないから
つーか自分なりの思想を持っているやつと話すほうが実りがあるし
質問に質問で返さないでくれない?
arr;というプログラム片のどこにアドレス計算が生じうるの?
全く無用と思える操作を強制する根拠法令を示しなさいよ
全く無用と思わない、あんたの思考回路でもいいよ
こちとら規格しか聞く耳持たないとか言わないから
つーか自分なりの思想を持っているやつと話すほうが実りがあるし
639デフォルトの名無しさん (ワッチョイ 697f-GQwd)
2017/12/02(土) 00:17:19.87ID:2ymk6h8v0 >>636
>>570
an expression that has type ‘‘array of type'' is converted to an expression with type ‘‘pointer to type ' that points to the initial element of the array object and is not an lvalue.
確かに、6.3の頭には演算子オペランドの暗黙的な型変換について規定するとは書いてあるけど、
あくまでもsuch an implicit conversionであって、それだけを規定するわけではないでしょ
expressionが変換されると書いてあるんだから、式が変換されると読むのが素直じゃない?
そう解釈しないと、例えば
return arr;
とか、どういう理屈でポインタを返すと考えれば良いの?
>>570
an expression that has type ‘‘array of type'' is converted to an expression with type ‘‘pointer to type ' that points to the initial element of the array object and is not an lvalue.
確かに、6.3の頭には演算子オペランドの暗黙的な型変換について規定するとは書いてあるけど、
あくまでもsuch an implicit conversionであって、それだけを規定するわけではないでしょ
expressionが変換されると書いてあるんだから、式が変換されると読むのが素直じゃない?
そう解釈しないと、例えば
return arr;
とか、どういう理屈でポインタを返すと考えれば良いの?
640デフォルトの名無しさん (ワッチョイ a66e-hJGX)
2017/12/02(土) 00:23:30.95ID:mWFcFWTj0 >>639
おまえさんが言っているのはこういうことだ
int aho() [10]
{
int arr[10];
return arr;
}
コンパイル通るかどうかやってみな
で、どういう理屈でそうなるのか
おまえさん自身が言ってみな
おまえさんが言っているのはこういうことだ
int aho() [10]
{
int arr[10];
return arr;
}
コンパイル通るかどうかやってみな
で、どういう理屈でそうなるのか
おまえさん自身が言ってみな
641デフォルトの名無しさん (ワッチョイ 697f-GQwd)
2017/12/02(土) 00:29:15.26ID:2ymk6h8v0 >>640
自分は一貫してreturn arr;でint*を返すという主張なんだけど?
あなたこそ、演算子を伴わないと変換が行われないと主張してたんだよね?
そういう解釈だと、どうやって
return arr;
でint*返せるのって質問だよ
自分は一貫してreturn arr;でint*を返すという主張なんだけど?
あなたこそ、演算子を伴わないと変換が行われないと主張してたんだよね?
そういう解釈だと、どうやって
return arr;
でint*返せるのって質問だよ
642デフォルトの名無しさん (ワッチョイ a66e-hJGX)
2017/12/02(土) 00:32:10.46ID:mWFcFWTj0643デフォルトの名無しさん (ワッチョイ ea33-MbHU)
2017/12/02(土) 00:36:49.22ID:+GJuKLXc0 >>639
return についての規定で代入と同じ変換が行われることになってる。
規格見てるんなら return について疑問に思った時点で該当箇所読んでから聞こうな。
「自分の論拠が想像」は許さない立場なんだからさ。
return についての規定で代入と同じ変換が行われることになってる。
規格見てるんなら return について疑問に思った時点で該当箇所読んでから聞こうな。
「自分の論拠が想像」は許さない立場なんだからさ。
644デフォルトの名無しさん (ワッチョイ 697f-GQwd)
2017/12/02(土) 00:45:15.02ID:2ymk6h8v0 >>643
おお、ほんとだ
ありがとう、見落としてたわ
ついでに初期化宣言子も見返したけど、単純代入と同じ型変換後の値が初期値って書いてあるな
ごめん、ごめん
規格解釈は間違ってたけど、結果は合ってたって感じかな
こういう指摘くれたら1発で済んだのに。。。
おお、ほんとだ
ありがとう、見落としてたわ
ついでに初期化宣言子も見返したけど、単純代入と同じ型変換後の値が初期値って書いてあるな
ごめん、ごめん
規格解釈は間違ってたけど、結果は合ってたって感じかな
こういう指摘くれたら1発で済んだのに。。。
645デフォルトの名無しさん (ワッチョイ a66e-hJGX)
2017/12/02(土) 00:52:58.64ID:mWFcFWTj0646デフォルトの名無しさん (ワッチョイ 3dab-bpph)
2017/12/02(土) 15:52:09.87ID:KedYgmHp0 文系で一から使えるようになるまでにどれくらいかかりますか?
647デフォルトの名無しさん (ワッチョイ 398a-fjL1)
2017/12/02(土) 16:07:39.94ID:fU6v9rJN0 桃クリ3年柿8年ゆずの大馬鹿13年。
648デフォルトの名無しさん (ワッチョイ 4af9-4cvy)
2017/12/02(土) 16:16:16.79ID:34/Kk+++0 >>646
文系かどうかはあまり関係ないと思う。論理的な思考が苦手でなければok。
使えるようになるのレベルに幅がありすぎるからなんとも言えない。
プログラミング初めてで、どうしてもCでなければならない理由がないなら、他の言語から入った方が実用的なことをするのには早いと思うよ。
文系かどうかはあまり関係ないと思う。論理的な思考が苦手でなければok。
使えるようになるのレベルに幅がありすぎるからなんとも言えない。
プログラミング初めてで、どうしてもCでなければならない理由がないなら、他の言語から入った方が実用的なことをするのには早いと思うよ。
649デフォルトの名無しさん (ワッチョイ 3d9f-JjO2)
2017/12/02(土) 16:25:40.62ID:WQRORJsZ0 >>647
ゆずの大馬鹿は18年だったんだが、最近のゆずは発育がいいのか?
ゆずの大馬鹿は18年だったんだが、最近のゆずは発育がいいのか?
650デフォルトの名無しさん (ワンミングク MM7a-fjL1)
2017/12/02(土) 17:01:24.21ID:dQxrNdHKM 接ぎ木するんだろ
>>646
Java がいいんじゃないかな?書籍も多い
Java がいいんじゃないかな?書籍も多い
652デフォルトの名無しさん (ワッチョイ 3d9f-JjO2)
2017/12/02(土) 18:49:23.92ID:WQRORJsZ0 >>646
数学/物理が出来なくて文系に行った口なら諦めろ。一生無理だ。
頑張ったところで、若い奴らに簡単に追い越され、一生惨めな思いをするだけだ。
他に適性のある分野を探した方がいい。
現実的には、理系/文系のどちらの知識も必要なく、抽象/論理思考が出来るかどうかが全てだ。
だから高々高校2年間程度のラベルの結果である文系/理系自体には大した意味がない。
しかし、そもそも抽象/論理思考が得意なら、当然、
不得手な奴が混ざっている環境(つまり文理分けていない状況)においては無双できる。
結果、「得意だから」≒「好きだから」という理由で文理を選んだのなら、文系を選んでる時点で向いてない。
そして大学4年間で理系の連中は周りが抽象/論理思考出来る奴らばかりという環境で鍛えられることになるから、
決定的な差がついてしまう。
そうではなく、俺は数学も得意な文系だ!というのなら行けるかもしれん。
最近は経済学部が理系化しつつあるという話だし。
いずれにしても個人差の方が大きい。学生なら、やってみて面白くなければ諦める、でいいと思うが。
面白いと思えて続かないようなら向いてない。
数学/物理が出来なくて文系に行った口なら諦めろ。一生無理だ。
頑張ったところで、若い奴らに簡単に追い越され、一生惨めな思いをするだけだ。
他に適性のある分野を探した方がいい。
現実的には、理系/文系のどちらの知識も必要なく、抽象/論理思考が出来るかどうかが全てだ。
だから高々高校2年間程度のラベルの結果である文系/理系自体には大した意味がない。
しかし、そもそも抽象/論理思考が得意なら、当然、
不得手な奴が混ざっている環境(つまり文理分けていない状況)においては無双できる。
結果、「得意だから」≒「好きだから」という理由で文理を選んだのなら、文系を選んでる時点で向いてない。
そして大学4年間で理系の連中は周りが抽象/論理思考出来る奴らばかりという環境で鍛えられることになるから、
決定的な差がついてしまう。
そうではなく、俺は数学も得意な文系だ!というのなら行けるかもしれん。
最近は経済学部が理系化しつつあるという話だし。
いずれにしても個人差の方が大きい。学生なら、やってみて面白くなければ諦める、でいいと思うが。
面白いと思えて続かないようなら向いてない。
■ このスレッドは過去ログ倉庫に格納されています
