C言語なら俺に聞け 162
「そのすたーちゃー(strchr)使うのやめろよ言うまでもなくすたーあーちゃー(strrchr)もな」って言うかも 今更C言語の話なんてしないけどストラ云々なんていっても伝わらんのは判ってる 普通に エスティーアールレン エスティーアールキャット エスティアールエスティーアール って言ってる stdioは エスティディーアイオー ぶっちゃけローマ字でもバンドの名前でもstrをスターなんて読むこと無いだろ KAT-TUN かっつん ONE OK ROCK おねぇオッケーロック 正しく読むのむずすぎだろ わかったアールだからアーって発音するのか そんなん聞いたことないな どこの界隈で言ってるんだ それにstrならエスティアーになるはずではw strlen ストリング レン strcat ストリング キャット strstr … stdio スタンダード アイオー strcspn 使い方すら分からない >>748 つうかrはアーって発音すんだよ まさかvをブイとか言わないよなw vはヴィーだよ >>748 で、partyをパーリーと発音するように、tでアーと続くからラと発音してると思われる ググるとフラップTと言うらしいな >フラップT は、 t が前後を母音に挟まれており、かつ、t を含む音節にアクセントが置かれていない場合に起こります。 全然ちゃうやんw 母音に挟まれてないしアクセントはターにあるだろ 英語を自分ルール作って勝手に読んでる奴は暗黙の合意をわかる能力が低いということ これはコンピュータ言語でも同じだ 自分で標準ライブラリ作り直すくらいの覚悟ならいいが中途半端に自分流突き通す奴は上達しない >>756 突然どうしたw tはラと発音される事が多々ある 適当にググったからルールの呼称を間違えたようだ それだけの事だろ r の発音が難しいのであーる と語尾を整えて欲しかった。 Let it ... DIE! ttps://letitdie.jp/common/age-verification/index.html 今夜は Beat It ビレー 今夜は Eat It イレー 静的記憶域期間をもつ、文字列リテラルの正体をおしえてください。 文字列リテラルは、アドレス(ポインタ)でもあるんですよね? >静的記憶域期間 この表現って誰に教えて貰いました? >>767 文字列リテラルの型は文字の配列。 つまり型名で言えば char[ほにゃらら] ってこと。 配列がその先頭要素を指すポインタに (一部の例外を除いて) 暗黙に型変換されるルールによって 式の中ではポインタとして使えるけど文字列リテラルというオブジェクトの実体は配列。 配列と関数はちょっと変則的な暗黙の変換があるので そのあたりはルールを丸暗記してもらうしかしょうがない。 i386の msg: db "hello" と ary: dd 65, 66, 67 はどっちも配列! 故に文字列リテラルも配列か char moji[]="HELLO"; はBASICの 100 RESTORE DATA_HELLO:READ MOJI$ 110 *DATA_HELLO 120 DATA "HELLO" ってイメージ・・・などと意味不明な(ry 友達が二分探索のアルゴリズムを組んでコードがコンパイルを通ったんだけど、実行するたびに、ターミナルの画面が真っ白になるらしい。原因として考えられるのは?やはりメモリ関連のミスですか? これだけの説明で原因を特定出来たら、そいつは神かもしれない >ターミナルの画面が真っ白になる プログラムの動作結果でこういう現象は起きるものなのか? 動作環境はなんだろう。 とうせバイナリ表示してansiエスケープになってんだろ >>778 ですけど、ネットで知り合った外国人なので、詳しい開発環境やら聞いているんですが、返信がないんですよ。きっと半狂乱になって格闘してますよ >>784 外国人このスレに呼べよ 英語に自信がある猛者が揃ってるぞ 英語に自信のある猛者がスターキャットやスタジオヘッダーと言っているスレなのか。 >>787 🤣 >>786 was trying to write a binary search algorithm in C using functios.. The compiler was okay but whenever I tried to run it, the terminal was just blank 上記のチャットを受信してから、コード、コンパイラ、OSを教えてくれ、って送信しても返事がないんですよ そりゃネットで知り合ったやつにパソコンの情報教えるってリスキーだからな 聞いてるお前もリテラシーないよ 情報経って、個人情報ではないぞ リスキーなら、そもそもそんな話をネットで言うなよ このスレ老人の集いみたいなとこあるからな 実名住所晒してたインターネット黎明期までのリテラシーしかないんだろ 質問です。 現在書籍の方の苦CでC言語の基礎を勉強しているのですが、なかなか基礎が身についた感じがしません。 どのように勉強すれば、C言語の基礎が身につけられるのでしょうか? 今更C言語を勉強する意味について、俯瞰的な視点で考える必要がある さてあなたはどこで道を間違えたのだろうか 昔恋しい下町の 夢が花咲くC言語 よってらっしゃい よってらっしゃいお兄さん >>795 基礎は反復練習が必要 つまらないけど 筋トレだと思って毎日十分、コードを暗記するつもりで写経すると良い おすすめはデータ構造とアルゴリズムのコード >>798 お返事ありがとうございます。 組み込みはとりあえずArduinoをやれば良いのでしょうか? >>799 お返事ありがとうございます。 反復練習の部分についてなのですが、苦Cには各章ごとに練習問題がありますが、それを繰り返しやるのでも良いのでしょうか? >>801 それでもいい 飽きたらネットで初心者向けのサンプルコード探してそれを写経すると良い おすすめは文字列処理 まさにその通りで、勉強するものでなく、練習するものだと思います まぁ、学問全体そういうものかもしれませんが 身に付くまでやれば身に付くという話だわな。 技能を身に付けている人は自分なりに小さなコツをたくさん発見したりはしてるかもしれんけど この通りやれば簡単に身に付く!みたいな道筋をたどってるわけではない。 たくさんの本やコードを読んでたくさん書いてみるしか仕方ない。 意外と覚えるのは、間違えて、その間違いを見つけたとき だから、数多く間違える事はとっても大事 つーかなんか作れよ でないと身につく訳ねーじゃん 何で本ばっか読んでるんだ C は間違ったコードを書いてもエラーとして検出されない (そしてわけのわからんことになる) ことがよくあるから あまり極端に知識が不足する状態でいきなりコードを書き始めるというのは良くないと思うが、 ある程度に知識を入れたら自分で考えて書かんと身につかんというのは確かにそう。 たとえばこうやって日本語の文章を書くときに日本語の文法を意識しないでしょ。 言語は当たり前のように使えるスタートラインなのでそこでいちいち考えない。 (引っかかりを感じて仕様を確認することもそれなりにはあるけど。) 考えなくてもスッと出てくる程度に身に付けるには実際に使って訓練するしかない。 Aiに聞きながら作る アホな俺でもjaascriptでたくさんスクリプト作れるようになったぞ 枝ぶりの良い木に紐をかけ、首でぶら下がると、背が伸びるとか。 昔は、誰かの思いついた最強の仕様書に苦しむと、背を伸ばしたそう。 やりたいことがあって、その手段としてC言語を選んで学んだので。 けど今の環境だと手段が山ほどあるからCでなきゃいけないって理由が無いとすぐグダりそう・・・。 >>795 >書籍の苦Cで、C言語の基礎を勉強しているのですが この本はやってみた系の本でしょ。 学ぶ内容が薄い Ruby の女神・池澤あやかが言ってるけど、 大学のC の授業は、99% 挫折する。 Ruby on Rails みたいに、すぐウェブアプリ・データベースが動かないでしょ。 正常に動くまでに、ポインターで数年以上無駄にする だから初心者はRails一択。 筑波大学も使っている、Railsチュートリアルのサイトで、 古いバージョンのRails 5 なら、無料で読める まずこれでウェブアプリの作り方や必要な技術を学ぶ。 まずアプリの最終形を知っておく事が大事 文法やポインターが難しいCなどは、 アプリの作り方を知っている香具師がやるべきもの。 初心者じゃ、数年経ってもアプリを作る所までたどり着けないから。 だから挫折率99% プログラミング学習は難しくて無駄だったという印象だけが残る。 機械語・アセンブリがそう。 こういう機械的な事を人間が学んでも無駄でしょ プログラミングは文学じゃないからw 機械と会話するのがプログラミング 何を馬鹿な事言ってんだと思うかもしれないが、それは先人が道を切り開いたから、ただ歩くだけで済んでる で、そういう奴に限ってローコードやノーコードを馬鹿にすんだよなw いや、行き着く先はそこだから でも、悲観することは無い 本物のプログラマーはそのシステムを作る側になれるから キチガイに便乗するのは嫌だけど初心者にいきなりCはあかんやろ… >>802 ID:PhbAFJr0です。 お返事ありがとうございます。 分かりました。とりあえず、まずは練習問題を繰り返しやってみようと思います。 アルゴリズムとデータ構造のコードについてはネットで調べてみたところ少し興味を持ったので、練習問題が完璧になってきたタイミングで取り組んでみます。 ありがとうございました。 >>814 お返事ありがとうございます。 苦Cはやってみた系なのでしょうか? 一応ネットで調べてみたところ入門書であると書かれていたため、自分には丁度良いかなと思っていたのですが。 Railsについてはよくわからないので調べてみます。 ありがとうございます。 >>819 「苦しんで覚えるC言語」は仕様の細部を積み上げて理解しようとする本。 十分に解説しきれているかどうかはともかくコンセプトとしてはそういう感じ。 「やってみよう」タイプの本ではなく、プログラミングを始めるまでが長いところが苦しいんだ。 苦しい分だけ深い理解はできる。 よくある「簡単にわかる」系の本に対するアンチテーゼだと思う。 実践は実践してみりゃいいんだから本は理屈で支えるべきと私は考えていて、 その点からは好ましい入門書だと思う。 でも読むだけでは出来るようにはならない。 厳しいことをいうと、Cで嫌悪してるなら、業界に向いてないから 練習問題を繰り返す意味がわからんな プログラム言語なんて所詮レゴブロックみたいなもん ルール覚えたら後は自分で何作るかだろ Cはマニュアルトランスミッションと言える 今はスポーツカーですらオートマで運転出来るが、Cを知らないというのは、プロのレーサーがオートマしか扱えないと言ってるに等しい オートマ限定の自称プロがコードを書いてるのが現状 解きたい問題に対して適切な言語選ぶだけの話 cはマニュアル車とか的はずれ マニュアル車は的外れだと思うけど、コンピューターでメシ食おうとしてる人間がCと言うかコンピューターの仕組み知らないのはどうなんだ >>827 コンピューターの仕組みって言っても幅広いし全部知ってる必要なんてない 自称C言語使えますってやつでもキャッシュ最適化なんてできないやつがほとんどだろ 別にCPUやらOSやら設計できるレベルの知識持てとは言わんけどポインタ理解できないのでC使えませんとか言うレベルの人に仕事任せたいとは思えん 本題と関係のないところで評価してしまうのは日本人の悪いところだな 流行りのPythonやJavAでも良いけどさ Cのイロハくらいは理解しておいた方が良いよな 色んな言語のベースになってるし 何よりメモリアドレスやらの理解が深まる Cは純粋にコンピュータの知識でイケるけど 最近流行りの高級言語は余計な概念まで覚える必要があるからなぁ Cがマニュアルというのは的外れ言ってんのは知ったか野郎だろ Javaや比較的Cに近いGoと根本的に違うのはメモリ管理だろ Cはオブジェクト指向をサポートしてないからそれは除外するとして、それ以外の違いはメモリ管理って事 手動でするか自動(ガベージコレクション)でするかの違い 手動ですれば効率が良くなる所も同じだ >>818 Cはメモリ管理が自前だからマニュアル車だな 俺はオートマ限定だけど gccで、今風のアトミックな変数処理って何を使うの? テストアンドセットとかインクリメントとか >>838 C11 以降には _Atomic キーワードがあって型指定子もしくは型修飾子として使える。 stdatomic.h には関連した型やら関数やらがある。 仕様としてはオプショナルなので提供していない処理系はあるが GCC はサポートしてる。 実体を辿るとビルトイン関数だからそれを直接使ってもいいけど 言語仕様にある範囲で書けるならそのほうが現代的なんじゃないかな。 >>809 プログラマ最上階級の形式言語屋は言語を学ぶ事自体が目的だけどめっちゃ伸びるだろ >>818 アルゴリズムとデータ構造とか、 プログラミングのお題スレの問題などは、 それこそRuby で学ぶ・作るべき ガベージコレクションがあるから、ポインターでメモリの事を考えなくてよい。 C/C++, Rust など、メモリを特別に扱う言語は、 仕事で給料をもらいながら仕方なくやるもの 趣味でやるものじゃない。時間の無駄。 特に初心者には言語の文法よりも、 アプリを作る時に、どういう手順・技術が必要なのかとか、全体像が大切。 細部を勉強しても、その言語の仕事をやらなければ意味ないから 全てのシステム・アプリに共通する事を勉強する方が、知識を転用できる。 それがRuby on Rails。 最も有名な基礎となるフレームワーク ループ処理であるEnumerable の所を見れば、どういう感じでアルゴリズムを書くか分かる read.cgi ver 07.5.4 2024/05/19 Walang Kapalit ★ | Donguri System Team 5ちゃんねる