Когда следует использовать одинарные кавычки и двойные кавычки в программировании на C или С++?
Одиночные кавычки и двойные кавычки в C или С++
Ответ 1
 В C и в C++ одиночные кавычки идентифицируют один символ, а двойные кавычки создают строковый литерал. 'a' - это единственный литеральный символ, а "a" - строковый литерал, содержащий 'a' и нулевой терминатор (это массив с двумя символами).
 В C++ тип символьного литерала - char, но обратите внимание, что в C тип символьного литерала является int, то есть sizeof 'a' равен 4 в архитектуре, где ints 32bit (и CHAR_BIT - 8), а sizeof(char) равно 1 всюду.
Ответ 2
Некоторые компиляторы также реализуют расширение, которое допускает многосимвольные константы. В стандарте C99 говорится:
6.4.4.4p10: "Значение целочисленной символьной константы, содержащей больше чем один символ (например, 'ab'), или содержащий символ или выход последовательность, не отображающая однобайтовый символ выполнения, от реализации".
Это может выглядеть так:
const uint32_t png_ihdr = 'IHDR';
Результирующая константа (в GCC, которая реализует это) имеет значение, которое вы получаете, принимая каждый символ и переставляя его, так что "I" попадает в самые значащие биты 32-битного значения. Очевидно, вы не должны полагаться на это, если пишете независимый от платформы код.
Ответ 3
Одиночные кавычки - это символы (char), двойные кавычки - строки с нулевым завершением (char *).
char c = 'x';
char *s = "Hello World";
Ответ 4
-  'x'- целое число, представляющее численное значение буква x в наборе символов машин
-  "x"- массив символов, длиной два символа, состоящий из‘x’, за которым следует‘\0’
Ответ 5
Одиночные кавычки предназначены для одного символа. Двойные кавычки для строки (массив символов). Вы можете использовать одинарные кавычки для создания строки по одному символу за раз, если хотите.
char myChar     = 'A';
char myString[] = "Hello Mum";
char myOtherString[] = { 'H','e','l','l','o','\0' };
Ответ 6
Я ткнулся с такими вещами, как: int cc = 'cc'; Бывает, что в основном это байтовая копия целого числа. Следовательно, способ взглянуть на это состоит в том, что "cc", который в основном 2 c, копируется в нижние 2 байта целого cc. Если вы ищете мелочи, то
printf("%d %d", 'c', 'cc'); would give:
99 25443
что, поскольку 25443 = 99 + 256 * 99
Таким образом, 'cc' является многосимвольной константой, а не строкой.
ура
Ответ 7
-  single quoteдляcharacter;
-  double quoteдляstring.
Ответ 8
В одинарных кавычках C, таких как 'a', указывают символьные константы, тогда как "a" - это массив символов, всегда заканчивающийся символом 0
Ответ 9
Двойные кавычки предназначены для строковых литералов, например:
char str[] = "Hello world";
Одиночные кавычки предназначены для односимвольных литералов, например:
char c = 'x';
  EDIT Как сказал Дэвид в другом ответе, тип символьного литерала int.
Ответ 10
Одинарная кавычка используется для символа, тогда как двойная кавычка используется для строки.
Например..
 printf("%c \n",'a');
 printf("%s","Hello World");
Выход
а Hello World
Если вы использовали их в обратном случае и использовали одиночную кавычку для строки и двойной кавычки для символа. Здесь это будет результат;
  printf("%c \n","a");
  printf("%s",'Hello World');
вывод:
для первой строки. У вас будет значение для мусора или неожиданное. Или у вас может быть выход вроде этого.
а для второго оператора. Вы ничего не увидите. Еще одно. Если после этого у вас будет больше заявлений. Они также не дадут вам никакого результата.
Примечание. Язык PHP дает вам возможность легко использовать одиночную и двойную цитату.
Ответ 11
Одиночные кавычки обозначают char, double обозначают строку.
В Java это тоже одно и то же.
Ответ 12
Используйте одиночную кавычку с одиночным char как:
char ch = 'a';
здесь 'a' является константой char и равна значению ASCII char a.
Используйте двойную кавычку со строками как:
char str[] = "foo";
здесь "foo" - строковый литерал.
Хорошо использовать "a", но не использовать его foo'
