X



C言語なら俺に聞け 144
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん (ワッチョイ 838a-3nWA)
垢版 |
2017/12/23(土) 19:33:43.89ID:dghfoRy20
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/


http://mevius.5ch.net/test/read.cgi/tech/1509107288/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:----: EXT was configured
0303デフォルトの名無しさん (ワッチョイ 8a0b-UJUP)
垢版 |
2018/01/15(月) 22:02:04.83ID:/vxf22Ts0
あくまで私見だけどね
ストレートに情報へ行ったやつより
遠回りしてきたやつのほうが
俺は個人的には期待しちゃうな
ストレートタイプにもすげえのいるけど
確率論的なやつで
0304デフォルトの名無しさん
垢版 |
2018/01/15(月) 22:18:51.33
情報工学って結局何ができるのかね?
プログラミングなんかやってる奴よりは
MATLABとか操ってる奴の方が格上だし
PowerPointとExcelしか触らない奴の方がさらに格上だわな
0305デフォルトの名無しさん (ワッチョイ a58a-oih1)
垢版 |
2018/01/15(月) 22:25:47.87ID:nB3IxhPi0
>>302
情報専攻の奴が他分野と張り合うとしたら工学の領域では厳しい
情報工学としてではなく情報科学の方面で学会とかで研究成果を発表していく研究者としての方が
上の立場を狙いやすいと思う
0311デフォルトの名無しさん (ワッチョイ 11d0-EKU2)
垢版 |
2018/01/15(月) 23:29:43.21ID:kUJAacmi0
>>303
なんか先輩で

機械工学から大学院で知能情報なんとか?に入った人いるって言ってたけどそういうタイプか
でもそういうのって役に立つ人材なのかね
機械工学と情報工学が交わることって一切ないし
0313デフォルトの名無しさん (ワッチョイ a58a-8O9q)
垢版 |
2018/01/15(月) 23:52:43.23ID:nB3IxhPi0
>>311
例えばだが、運動解析や流体解析などの人工知能を弄るような場合などは機械系の出身者の方が純粋培養の情報系よりは役に立つだろうな
工学の応用という点では情報だけでは潰しが効かない
何か秀でた専門分野を持っていれば強力な武器になる
0314デフォルトの名無しさん
垢版 |
2018/01/16(火) 00:42:39.48
俺は仕事で必要になるまでアクチュエータという言葉すら聞いたことがなかった

サチュレーションとかハンチングとかもしかり

結局、純粋な情報系なんて糞食らえってことだ
0317デフォルトの名無しさん (ワンミングク MM7a-euJe)
垢版 |
2018/01/16(火) 01:50:08.80ID:ai9xYpzuM
最近の流行りで言えば、たぶんブロックチェーンは情報系。
他にはOSとかコンパイラとか人工知能そのものがたぶん情報系。
「情報系の成果を他の工学で使う」話をしてるのだったら、他の工学の知識の方が重要になるに決まってる。
0318デフォルトの名無しさん (ワッチョイ aad4-1Ifv)
垢版 |
2018/01/16(火) 01:53:49.35ID:r8efykKY0
何言ってんだこのバカ
0319デフォルトの名無しさん (ワッチョイ 3d9f-0PCX)
垢版 |
2018/01/16(火) 02:22:28.13ID:fnx7xBaf0
いや俺は>>317は当たっていると思うぞ。

情報系はソフトウェアそのものにフォーカスしてる。
だから最終的にソフトウェアで完結する物については情報系でいい。
当たり前だが他知識がない分、ソフトウェア技術で上回っている必要がある。
(工学系他と同程度のソフトしか書けないのであれば、他知識がない分糞なだけ)

ブロックチェーン(P2P)/OS/コンパイラ/人工知能『そのもの』はソフトウェアで完結してる。
他は超並列とか、少し前ならクラウドや仮想化/ライブマイグレーションとか。
0320デフォルトの名無しさん (ワッチョイ a58a-oih1)
垢版 |
2018/01/16(火) 03:31:07.22ID:Kooe0tJU0
情報科学とソフトウェア工学が中途半端に混じり合った上に、計算機科学や電子工学と被る部分も大きく、訳わからんのがいわゆる情報工学という学問分野
技術の発展を基盤とする工学なのか、純粋理論を追求する科学なのかスッキリしない
個人的に情報系の学問の本質は数学や物理学などの科学に近いと考えているが、ソフトウェアだけに限れば工学的なアプローチも間違いとは言えない
ただ情報系がソフトウェアだけにフォーカスしたものと言うのは極論すぎる
0323デフォルトの名無しさん (アウアウカー Sa55-EKU2)
垢版 |
2018/01/16(火) 18:09:55.18ID:I7+QVB4Ua
むしろこのご時世でプログラミングで食っていけるc言語プログラマーどこにいんの?
俺はweb系だしc言語詳しくないから友人の話だけど自動車のアンチロックブレーキシステムなんかの制御は自動車の知識をトップレベルで持つものにしかさわれないらしいな
c言語なんてweb系でもアプリ系でも使われてない以上むしろ機械系の人間専用みたいなとこあるんじゃないん
0324デフォルトの名無しさん (ワッチョイ 3d9f-0PCX)
垢版 |
2018/01/16(火) 18:58:32.24ID:fnx7xBaf0
やっぱWeb系は馬鹿だなとしか。

そういえばWeb系は情報系でも問題ないね。完全にソフトウェアでしかないし。
というかマジでWeb系は腹が立つほどレベルが低いから、
ちゃんと勉強した情報系の連中が押し寄せて、今のWeb系全員殺して欲しい。
C界隈にも分かるように言うと、「スクリプト言語しか出来ない奴をプログラマと呼ぶな」っての、偶にいるだろ。
あれよりさらに輪をかけて酷い感じ。
0325デフォルトの名無しさん (ワッチョイ 6a12-0PCX)
垢版 |
2018/01/16(火) 18:59:42.08ID:IFxShTi+0
・実は情報系人材以外のエンジニアにはオブジェクト指向や関数型は難し過ぎる
現代的?な言語の中でそこそこ簡単でそこそこ使えるのは実はCしかない

・機械語に変換して全て精査する場合は機械語に近い方がいいかもしれない
原発とかロケットとか製鉄所とかエアバスとか人工衛星とかいろいろ
0327デフォルトの名無しさん (ドコグロ MM6d-J7fK)
垢版 |
2018/01/16(火) 19:02:42.12ID:P6mPXtajM
>>323
まあ車の制御系は機能安全とかも要求されるからハードル高いわな
でも車でもボディ系(ワイパーとかパーウインドの制御とかいわゆる上半分のところ)はそこまで厳しくない
あと車じゃなくても家電製品とかプリンタとかカメラとかありとあらゆるものにソフトが入ってる時代だから組込屋って意外としぶとく生き残ってるよ
0328デフォルトの名無しさん (ワッチョイ 11d0-EKU2)
垢版 |
2018/01/16(火) 19:08:39.06ID:0ZvsnQMA0
web系ってばかではないでしょ
むしろ天才気質が多い
0329デフォルトの名無しさん (ワッチョイ a58a-8O9q)
垢版 |
2018/01/16(火) 19:10:51.68ID:Kooe0tJU0
プログラミングだけなら文系でもできる
ただC言語の中心である組み込み機器の制御系のプログラム設計/作成となると文系では荷が重い
制御プログラムの中身というか制御モデルは大量の連立微分方程式で記述される
機械系にしろ電気電子系にしろ制御理論にある程度精通していないと手も足も出ない
工学系技術者としての存在意義はC言語の文法に精通することではなくて、C言語(別に何の言語でもいいけど)でシステム設計/記述が出来る点にある
自分は電子系出身で専門はブラシレスモータのベクトル制御の分野
簡単に言えばハイブリッド自動車などの駆動モータ制御なんかで使われている技術のこと
0330デフォルトの名無しさん (ワッチョイ 11d0-EKU2)
垢版 |
2018/01/16(火) 19:14:20.95ID:0ZvsnQMA0
>>329
すまない、質問で悪いんだがプログラミングは会社に入ってから身につけた?
それと大学院卒?
0332デフォルトの名無しさん (ワッチョイ 11d0-EKU2)
垢版 |
2018/01/16(火) 19:23:16.79ID:0ZvsnQMA0
>>331
【朗報】ワイ、情報工学生、希望を持つ
0333デフォルトの名無しさん (ワッチョイ 3d9f-0PCX)
垢版 |
2018/01/16(火) 19:24:51.35ID:fnx7xBaf0
>>325
> ・実は情報系人材以外のエンジニアにはオブジェクト指向や関数型は難し過ぎる
そんな訳ない。それはお前が理解出来てないだけ。

そもそもオブジェクト指向自体が「複雑化するソフトウェアを『簡単にする』」為に生まれた物であって、
オブジェクト指向ではまだ足りない、というので『関数型』が持て囃された。
本来は、関数型>オブジェクト指向>それ以前、の順で簡単なんだよ。
だからレガシーCOBOL等には手をつけられない事態になっているわけでね。
(ただしオブジェクト指向も関数型も馬鹿(=意識高い系)が調子に乗って暴走しているが)

Cが組み込みに使われるのは、余分なことをせず、書いた通りに動くから。
組み込み分野が広がっているのは、機械式よりも電子式制御のほうが圧倒的に楽だから。
考えてみろよ、車のエンジンで燃費最適化でバルブの開閉/点火タイミングを調整したいとき、
電子式なら1usずつ振るのも楽勝だが、機械式だと死ねるだろ。
VWの排ガス不正なんて、機械式では絶対に無理だった話だぞ。
0338デフォルトの名無しさん (アウアウカー Sa55-f6zg)
垢版 |
2018/01/16(火) 21:22:59.09ID:npxrv4qJa
>>323
ここに居る。
0340デフォルトの名無しさん (ワッチョイ 11d0-EKU2)
垢版 |
2018/01/16(火) 22:08:44.23ID:0ZvsnQMA0
連立微分方程式ってc言語で解けるもんなんか
そうとう頭良くないと難しそうだな
0343デフォルトの名無しさん
垢版 |
2018/01/16(火) 22:51:20.18
ラスカル変換とか自慰定数とかわけわからんよな
0344デフォルトの名無しさん (ワッチョイ 6ad7-bCzB)
垢版 |
2018/01/17(水) 00:23:33.18ID:n4hXUBWy0
アライグマかよ
0345愛知人
垢版 |
2018/01/17(水) 00:55:17.46ID:BsDn1sQu
連立微分方程式を解くのはmatlabでやるんだろ
その結果を使って制御プログラムをCで実装する
0346デフォルトの名無しさん (アウアウカー Sa55-EKU2)
垢版 |
2018/01/17(水) 01:34:39.49ID:mXaMftmXa
まぁ結論から言うとプログラミングが必要な技術者とかいないから安心しとけ
機械系とか電気系はプログラミング理解してるとむしろ馬鹿にされる
無駄な知識付けてるってことだから要領ないってことだし
0347デフォルトの名無しさん (ワッチョイ 3d9f-0PCX)
垢版 |
2018/01/17(水) 02:14:48.88ID:TP+o0KtY0
結論から言うと、現代においてプログラミングが出来ない>>346みたいな奴は池沼以下だと気づけ。
だからこそ、小学校からプログラミング授業が必修化される。(個人的にはこれには反対だが)
あと10年もすると、「エ、マジ、キモーイ、プログラミングが出来なくていいのは、小学生までだよね」の世界がマジで来る。
そうなれば>>346は老害オブ老害だ。

だからこんなところを荒らしてるんじゃなくて、マジでプログラミングを勉強した方がいい。
Cである必要はないが。
0348デフォルトの名無しさん (ワッチョイ a58a-8O9q)
垢版 |
2018/01/17(水) 02:42:01.62ID:rMDm0SCW0
制御での微分方程式は解くためのものじゃない
制御対象の挙動を単純化してモデル化するために使うんだよ
言い換えれば、物理現象をプログラムで扱えるようにするために数式に落とし込むための道具だよ
挙動を記述さえできればプログラムで制御することが出来る
0349デフォルトの名無しさん (ワッチョイ a58a-8O9q)
垢版 |
2018/01/17(水) 02:52:45.50ID:rMDm0SCW0
ついでに言うと微分方程式そのものは代数的に解くんじゃないよ
プログラム上で数値計算によって制御対象(モーター回転数など)がリアルタイムに目標値に追従するように制御量(電圧など)を制御するのが
狙いなので解そのものを求める必要はない
0353デフォルトの名無しさん (ワッチョイ ea6e-EKU2)
垢版 |
2018/01/17(水) 10:55:01.85ID:yTTfDOoo0
>>347
なんだこいつ...
プログラミングを学ぶことは否定しないがそれが別の分野で役立つ
つまり専門的な分野+プログラミングが必要な人材っていうのは嘘
適材適所ってあんだろ、飛行機のパイロットが彦井の設計しますか?
飛行機の設計する人が飛行機内の電子回路制御担当しますか?
飛行機内の電子回路制御担当する人がマイコン系のプログラミング担当しますか?

しない、以上
0354デフォルトの名無しさん (ササクッテロレ Spbd-5nGQ)
垢版 |
2018/01/17(水) 10:58:26.02ID:PqtOC17Fp
プログラマについてだけは専業は限界があるんだよな。
別分野で使うツールを作る仕事だから、その分野の事を知らないとまともなインターフェースを提供出来ないからな。
そう言ういみではプログラマほど他業種との交流を大事にしないとならない職業なんだ。
0357デフォルトの名無しさん (アウアウカー Sa55-f6zg)
垢版 |
2018/01/17(水) 12:36:59.86ID:yjhk8Mz+a
俺も彦井の設計してみたい
0359デフォルトの名無しさん (ドコグロ MM0a-J7fK)
垢版 |
2018/01/17(水) 19:38:25.93ID:2byJTHHUM
>>354
プログラミングって日本語とか英語とかで書いてある要件をC言語とかに翻訳する作業だから要件に対する知識とか要件を知ってる人との交流が重要なのは当たり前
政治家に同行する同時通訳者が政治の知識を持ってないと勤まらないとの似たようなもんだよ
0361デフォルトの名無しさん (ワッチョイ adba-UJUP)
垢版 |
2018/01/17(水) 20:57:44.11ID:bqqIYUkv0
おまえら暢気だなー
ほんっと金銭感覚が絶望的にアウトなやつら

AIが人の要望に応えるまでに
人力でやるべきことは無尽蔵とは言わんまでも
特需はごまんとあるわけで
それを指くわえて見送るのは
アンダードッグな精神構造がそうさせるんだろ

仕事ってそういうもんだぜ?
未来永劫食うに困らないなんて保証はねえんだよ
その時その時の社会情勢を見て自分にできることをやって
おまんまにありつくんだよ
0363デフォルトの名無しさん (ワッチョイ 3d9f-0PCX)
垢版 |
2018/01/17(水) 21:48:16.14ID:TP+o0KtY0
>>354
同意

>>353
情報系の適所はITドカタだよ。(PCで完結するソフトウェア)
電気電子(製造業)や自動車(機械)に於いては電気電子/機械の知識が無いと話にならんだろ。
例のブランコは、
https://www.tamingdata.com/wp-content/uploads/2010/07/tree-swing-project-management-large.png
結局のところ、仕様が分からない奴同士で話を進めるからそうなるのであって、
仕様を決められる奴自身がプログラミングすれば解決するんだよ。

今のところプログラミングは文系馬鹿には難しすぎる、ってことでITドカタが担当しており、
仕様のすりあわせをもっと確実に、ってことになっているが、
そもそも発注元がプログラミング出来ればこんなことにはなりようも無いのさ。
(最大の問題は発注元が工数《どれくらい難しいか》を全く見積もれないこと。例:京都市)
だから小学生から全員にプログラミングを教え、これが成功した場合、この話はなくなる。

プログラミングを万人が出来る時代になろうとしているのさ。
だから情報系特化なら、常人の領域ではなく、達人になっていないとただのゴミだ。
「プログラミングが出来る」だけで食える時代ではなくなりつつある。ちゃんと認識しろ。
そしてソフトウェアインフラのほぼ全てをCが担当している現在の状況で、
C抜きで達人になれるはずも無いだろ。
情報系でPythonしか出来ません=おまえ=ゴミ確定だよ。
情報系の学生ならグダグダ言わずにCもやるしかないだろ。アホなのか?
逆に工学系で専門領域がPythonやMatlabで完結しているのならそれだけでいいが。
工学系にとってのプログラミングはあくまでもツールだからね。
0368デフォルトの名無しさん (ワッチョイ c58a-68Hl)
垢版 |
2018/01/18(木) 00:25:48.70ID:zprwsW+f0
荒れてるな
それではネタでも投下してみるか
単純な制御プログラムのサンプルとして物理現象を連立微分方程式としてどの様にプログラムに落とし込むかを示してみる
実際は目標値に対して追従するように入力項を加えるのだけど面倒くさいので省略
制御プログラムのサンプルと言いながら実は中身は単純なシミュレーションだけど大体こんな感じ
>>348,349で微分方程式の解そのものを求める必要はないといった意味は分かると思う

https://ideone.com/Od1fxj
0369デフォルトの名無しさん
垢版 |
2018/01/18(木) 01:43:35.84
>>368
それで、質問は何?
0371デフォルトの名無しさん (ワッチョイ c58a-nVvH)
垢版 |
2018/01/18(木) 07:32:44.38ID:zprwsW+f0
工学系のプログラミングの一面を示しただけだよ
業務系そのものを否定する気はない
スレに粘着してる情報工学の学生の参考にどうぞ
組み込みのC言語プログラムの理解の助けにでもなればいい
0374デフォルトの名無しさん (ワッチョイ 4dd0-Cxnk)
垢版 |
2018/01/18(木) 15:03:42.71ID:uBrEQRuR0
>>372
どうでもいいけど末尾6でガックシって大学内でのWi-Fi経由での書き込みやん
大学内Wi-Fiは監視されてるから2chに書き込まないほうがいいぞマジで
俺の大学は学籍番号登録して大学Wi-Fi繋ぐタイプだったがアプリとか落としまくってたらメールで呼び出しくらったわ
利用禁止だけで済んだけど
0381デフォルトの名無しさん (ワッチョイ 0b81-QoPs)
垢版 |
2018/01/18(木) 16:57:47.29ID:gRlOykmi0
大学当局が何の規制も監視もしていないことは自慢にはならないぞ
外部の違法サイトにも好き放題でアクセス出来てしまうって事は、
学内に不正侵入も招きかねない
学生の個人情報も流出しかねない大学だって言うことだろう
0387デフォルトの名無しさん (ワッチョイ 239b-Q7o0)
垢版 |
2018/01/18(木) 18:35:59.35ID:/FcYukkO0
C言語勉強するにあたり相談です。

@スクールに通って学ぶ(170時間程度)
A3日間の会社主催のセミナー参加
B本、参考書等やネットで独学
Cその他
それぞれ理由とおすすめがあればお願いします!
0393デフォルトの名無しさん (ドコグロ MM13-3fO/)
垢版 |
2018/01/18(木) 19:29:03.24ID:r+5+UL4/M
>>392
会社の命令なら会社主催のセミナー行けよ
C言語の話以外にもその会社独自のやり方の説明もあるだろうし
それとは別に独学でも学びたいと言うならスクールでも本でもいいけど、なんか簡単なゲームでも作って色々ここで聞きまくるって言うのでいいんじゃね?
0395デフォルトの名無しさん (ワッチョイ 559f-x16F)
垢版 |
2018/01/20(土) 11:31:34.12ID:bSTKludV0
Cのマクロでその場じゃないところに展開って出来ないかな?

VC++2008環境でVC++2017(C++11相当)のラムダを使いたいのだが、当然使えない。
そこで以下を参考にしてマクロで乗り切れないかと考えている。
http://koturn.hatenablog.com/entry/2013/08/06/223805
字句の置換は何とかなるとして、問題なのは「関数内関数定義」がない事。
だから手動でいいから関数の外側に展開させたい。具体的に言えば、以下。

void abssort(float* x, unsigned n) {
std::sort(x, x + n, [](float a, float b) {return (std::abs(a) < std::abs(b));});
}

を書き換えるとして、LAMBDAがマクロで、

// ここに出力する方法あるか?
void abssort(float* x, unsigned n) {
std::sort(x, x + n, LAMBDA(ホニャララ) );
}
// 或いはここでもいい

マクロ内で#defineしてプリプロセッサをもう一度くぐらせればいけそうな気がするが、これって無しだよな?
出力場所は手動、名前は手動マングリングで構わない。記述上ラムダを使いたい。
環境を上げるとしたらVS2017なので、そのときに書き換えがほぼ無しで済ませたいから。
delegateで書いてみたものの、やっぱり記述量が無駄に多いので、ラムダにしたい。
0396愛知人
垢版 |
2018/01/20(土) 12:29:33.07ID:+yb3sEoQ
void abssortごと置き換える
C++詳しくないから知らんけど
0397デフォルトの名無しさん (ワッチョイ 559f-x16F)
垢版 |
2018/01/20(土) 13:02:28.85ID:bSTKludV0
関連質問しました。
http://mevius.2ch.net/test/read.cgi/tech/1413180800/138

VSにユーザ定義プリプロセッサを噛ませられればいけるのだけど、
知っている人がいたらよろしく。


>>396
それは無理。
実際はLAMBDAは大量にバラバラに使ってる。
というかそういう使い方しないと大してメリットないし。以下とか。

viod function(){
if (xx) x = LAMBDA( xxxx );
else if (yy) y = yyyy;
else z = LAMBDA( zzzz );
}
■ このスレッドは過去ログ倉庫に格納されています

ニューススポーツなんでも実況