Каква е разликата между знак и низ в C ++?


Отговор 1:

Променлива от тип char може да съдържа символна стойност за реализиране на набор от символи

например:

нищожен foo ()

{

char c = 'a';

}

тук c държи стойността „a“

но ако искаме да задържим стойността на някое име "john", ще трябва да декларираме масив за това, т.е.

нищожен foo ()

{

char c [] = ”john”;

}

Низът не е нищо друго освен клас, който съдържа масив от символи, но автоматично го управлява вместо вас. Така че не е необходимо да декларирате масив отново и отново.

например:

нищожен foo ()

{

string s = “john”;

}


Отговор 2:

Първо, да ви обясня някои C. C ++ е като разширяване на C, така че трябва да разберете C, за да можете да кодирате в C ++

C е стар и много нисък език. Той има много малко вградени типове. Сигурен съм, че вече ги познавате. Това са int, long, double, float,…

Един от тези видове е характер (char). И странно, че char всъщност е число, също като int или long. Всъщност можете да съхранявате произволно число от -128 до +127 в променлива от тип char. Забележете, че има точно 256 числа в този диапазон. Това е така, защото char е 8-битова променлива и 8 бита информация могат да съхраняват точно 256 различни стойности.

Тук се появяват истинските „герои“. В основната таблица на ASCII има точно 128 символа, изброени от 0 до 127. Кажете, че имате нещо като:

char my_char = 'b';

Действителната стойност, която се съхранява в my_char, е ASCII стойността, ако е „b“ (това е 98). Така че в C (и C ++), когато използваме променлива char, всъщност съхраняваме стойността ASCII на знак като число.

Сега, нека ви обясня струните. В добрия стар C, няма такова нещо като тип данни от низ. Можете да съхранявате низове само като масив от знаци.

Има пример:

char my_string [] = "Аз съм масив от знаци";
// забележете разликата в офертата от предишния пример

Тук декларирахме масив char и запазихме низа в него. Но има един голям проблем. Подобни струни са трудни за работа. За щастие, в C ++ има тип низ. В C ++, низът е клас. В основата си той все още е масив char, само че има функции в този клас, които правят работата с низовете по-лесна.


Отговор 3:

Първо, да ви обясня някои C. C ++ е като разширяване на C, така че трябва да разберете C, за да можете да кодирате в C ++

C е стар и много нисък език. Той има много малко вградени типове. Сигурен съм, че вече ги познавате. Това са int, long, double, float,…

Един от тези видове е характер (char). И странно, че char всъщност е число, също като int или long. Всъщност можете да съхранявате произволно число от -128 до +127 в променлива от тип char. Забележете, че има точно 256 числа в този диапазон. Това е така, защото char е 8-битова променлива и 8 бита информация могат да съхраняват точно 256 различни стойности.

Тук се появяват истинските „герои“. В основната таблица на ASCII има точно 128 символа, изброени от 0 до 127. Кажете, че имате нещо като:

char my_char = 'b';

Действителната стойност, която се съхранява в my_char, е ASCII стойността, ако е „b“ (това е 98). Така че в C (и C ++), когато използваме променлива char, всъщност съхраняваме стойността ASCII на знак като число.

Сега, нека ви обясня струните. В добрия стар C, няма такова нещо като тип данни от низ. Можете да съхранявате низове само като масив от знаци.

Има пример:

char my_string [] = "Аз съм масив от знаци";
// забележете разликата в офертата от предишния пример

Тук декларирахме масив char и запазихме низа в него. Но има един голям проблем. Подобни струни са трудни за работа. За щастие, в C ++ има тип низ. В C ++, низът е клас. В основата си той все още е масив char, само че има функции в този клас, които правят работата с низовете по-лесна.


Отговор 4:

Първо, да ви обясня някои C. C ++ е като разширяване на C, така че трябва да разберете C, за да можете да кодирате в C ++

C е стар и много нисък език. Той има много малко вградени типове. Сигурен съм, че вече ги познавате. Това са int, long, double, float,…

Един от тези видове е характер (char). И странно, че char всъщност е число, също като int или long. Всъщност можете да съхранявате произволно число от -128 до +127 в променлива от тип char. Забележете, че има точно 256 числа в този диапазон. Това е така, защото char е 8-битова променлива и 8 бита информация могат да съхраняват точно 256 различни стойности.

Тук се появяват истинските „герои“. В основната таблица на ASCII има точно 128 символа, изброени от 0 до 127. Кажете, че имате нещо като:

char my_char = 'b';

Действителната стойност, която се съхранява в my_char, е ASCII стойността, ако е „b“ (това е 98). Така че в C (и C ++), когато използваме променлива char, всъщност съхраняваме стойността ASCII на знак като число.

Сега, нека ви обясня струните. В добрия стар C, няма такова нещо като тип данни от низ. Можете да съхранявате низове само като масив от знаци.

Има пример:

char my_string [] = "Аз съм масив от знаци";
// забележете разликата в офертата от предишния пример

Тук декларирахме масив char и запазихме низа в него. Но има един голям проблем. Подобни струни са трудни за работа. За щастие, в C ++ има тип низ. В C ++, низът е клас. В основата си той все още е масив char, само че има функции в този клас, които правят работата с низовете по-лесна.