-7
''
に記載されている両方の値を表示するプログラムが表示されないようです。 'Aa'
、'Bb'
というようにリストされていますが、コードを実行すると、2番目の文字(小文字)のみが表示されます。 int
のコンバージョン、ポインタ、その他のものから変更しようとしましたが、この部分を把握することはできません。どんな助けでも大歓迎です!1文字ではなく2文字を表示する方法は?
#include "stdafx.h"
#include <iostream>
#include <cctype>
#include <string>
using std::cin;
using std::cout;
using std::endl;
int main()
{
char letters[] = { 'Aa', 'Bb', 'Cc', 'Dd', 'Ee', 'Ff', 'Gg', 'Hh',
'Ii', 'Jj', 'Kk', 'Ll', 'Mm', 'Nn', 'Oo', 'Pp', 'Qq', 'Rr', 'Ss',
'Tt', 'Uu', 'Vv', 'Ww', 'Xx', 'Yy', 'Zz', '\0'};
for (char * cp = letters; *cp; ++cp)
{
if (*cp == 0) break;
printf("%c", *cp);
}
cout << endl;
}
それはアルファベットが表示されますが、ちょうど小文字値:
は、ここに私のコードです。 ''
に大文字と小文字の両方の値を表示するにはどうすればよいですか?
''aa'は' char'ではありません。あなたは 'char []'でやろうとしていることをすることはできません。文字列を使用します。 – user2357112
[CまたはC++での一重引用符と二重引用符の比較](http://stackoverflow.com/questions/3683602/single-quotes-vs-double-quotes-in-c-or-c)を参照してください。 '' Aa ''を '' char ''(一文字しか保持できない)に合わせようとすると、切り詰められて単純な '' a ''に変わります。それの期待された効果は何でしたか?また、すべてのコンパイラの警告を有効にすることをお勧めします( '-Wall -Wextra' gcc) – yeputons
ありがとうございました、それは私が思ったものですが、配列の文字列を見つけることができました。 –