私はまだフォーラムに参加したばかりなので、フォーラムのエチケットの問題について事前にお詫び申し上げます。
int
配列と配列の違いがよくわかりませんchar
。
char
私は最近、最初は配列を使用して数値の文字列を格納し、後で特定の文字を呼び出しint
、それらの操作を使用して積を見つけようとするプロジェクト オイラーの問題用のプログラムを作成しました。char 文字列を使用すると、途方もなく大きな製品が得られましたが、明らかに正しくありません。文字 ( ) としてコンパイルされると思っていたものをstr[n]
整数のインライン ( (int)str[n]
) に変換しても、まったく同じことが行われました。実際に整数配列を使用した場合にのみ機能しました。
コードは次のとおりです
char
文字列用
char str[21] = "73167176531330624919";
これはうまくいきませんでした。4万くらいあるはずの答えに、1.5兆くらいの答えが出ました。
int
アレイ用
int str[] = {7,3,1,6,7,1,7,6,5,3,1,3,3,0,6,2,4,9,1,9};
これがうまくいきました。インラインタイプのキャスティングも外しました。
これらのことが機能した/機能しなかった理由、およびこれらのアイデアのより良い理解につながる可能性のあるものについての説明をいただければ幸いです。役立つものへのリンクも同様です。私は自分で文字列と配列とポインターをたくさん研究しましたが (私は高校生なので独学です)、概念はまだ混乱しています。
副次的な質問ですが、C の文字列は自動的に配列として保存されますか、それとも可能ですか?