Форум программистов, компьютерный форум, киберфорум
C для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
Другие темы раздела
C (СИ) Сумма произведений ряда Очень прошу подсказать код с легким примером на языке С! https://www.cyberforum.ru/ c-beginners/ thread2584162.html C (СИ) Нужна идея о том какую написать программу на С++
Нужно создать програму на С Может в кого-то есть какие либо идеи? Не готовый вариант, а тема для работы, если нужна будет помощь тогда обращусь к вам!) Добавлено через 2 минуты Ну есть идейка написать "флэппи берд"
C (СИ) Перевод из троичной системы счисления в десятичную https://www.cyberforum.ru/ c-beginners/ thread2584069.html
Помогите пожалуйста сделать программу которая позволяет ввести число в троичной системе и перевести его в десятичную. Спасибо заранее.
C (СИ) Как удалить из текста все заглавные буквы, кроме первых букв предложений Как удалить из текса все заглавные кроме заглавных вначале предложений https://www.cyberforum.ru/ c-beginners/ thread2583998.html
Найти член последовательности удовлетворяющий заданному условию C (СИ)
Последовательность вещественных чисел образуется следующим образом: а0 = 1/1, а1=2/1,…, аi=(Числитель аi-1 + Числитель аi-2) / (Знаменатель аi-1 + Знаменатель аi-2) Разработать программу, которая находит такой член последовательности, который отвечает условию |аn – аn-1| <= 0.001. Нашел ответ только на плюсах, интерпретировать под себя не смог. Нужно написать через while (а-ля цикл с...
C (СИ) Объединение пробелов https://www.cyberforum.ru/ c-beginners/ thread2583983.html
Вопрос такой. По учебнику К&R есть задание объединение пробелов, как это сделать? при выводе в printf(), при считывании символа с помощью getchar() надо заменить несколько символов пробела на 1. Как? Будет это работать на одинаковых символах букв и других знаках?
C (СИ) Сортировка char массива от меньшего слова к большему Не работает код. Дебагер зацикливается почему-то на 2-м while. #include <stdio.h> #include <stdlib.h> int main() { int counterx = 0,countery = 0,point1,point2,pstart,a = 0,b = 0; char x, y; https://www.cyberforum.ru/ c-beginners/ thread2583870.html quicksort дебаг рекурсии C (СИ)
Здравствуйте! Читаю Кинга и разбираю сейчас quicksort. Пример не оттуда, но вопросы аналогичные. 1) Не понял место for-while, а именно дублирование i++, j++. По дебаггеру значения изменяются вроде однократно за проход, поясните в таком случае как трактуется такая запись. 2) каким образом происходит работа программы после начала вызова quicksort(A+1...) не понимаю откуда и какие аргументы...
C (СИ) Проверить, является ли слово, введённое пользователем, палиндромом https://www.cyberforum.ru/ c-beginners/ thread2583837.html
Ребят помогите пожалуйста ( нужно исправить ошибку и сделать эту же задачу через массив ) Задача : Нужно проверить является ли слово введённое пользователем палиндромом ( такие, которые одинаково читаются слева направо и наоборот) у меня ошибка в коде ... ( и если можно сделать эту же задачу через массив , но тоже с циклом ) #include <conio.h> #include <stdio.h> #include <string.h>...
C (СИ) Хочу перевести код С++ на СИ Вот что есть .... #include <iostream> #include <string> #include <algorithm> using std::cout; using std::cin; using std::endl; using std::string; using std::equal; https://www.cyberforum.ru/ c-beginners/ thread2583766.html
C (СИ) Посчитать слова в строке
Привет, искал такого рода задачи с решением, нашел только с С++, но я не понял до конца что там и как. Вообщем нужно посчитать слова в строке, я сделал проверку на пробел, т.е если ввести одно слово то будет 0. А как сделать чтоб считало первое слово? И при пустой строке оставался 0. #include <stdio.h> int main(){ char text; int i, count = 0;
C (СИ) Минимальный элемент массива https://www.cyberforum.ru/ c-beginners/ thread2583609.html
Дан массив A из N целых элементов. Требуется найти и вывести минимальный элемент массива, вывести исходный массив. Input Со стандартного устройства ввода в первой строке вводится число N (1 &lt;= N &lt;= 1000)—количество элементов массива A. Во второй строке через пробел вводятся N чисел, элементы массива A (-1000 &lt;= A i &lt;= 1000). Output В первой строке выведите минимальный элемент массива...
0 / 0 / 0
Регистрация: 15.02.2020
Сообщений: 11
0

Что такое char *a[2], и в чем его отличие от char *a? - C (СИ) - Ответ 14255005

15.02.2020, 13:45. Показов 2460. Ответов 3
Метки (Все метки)

Author24 — интернет-сервис помощи студентам
Предположу, что char *a - указатель на символьный элемент(адрес), а char *a[2] - массив указателей на указатели на символьные переменные(адреса адресов). В частности, если
C
1
2
char *a;
char *b[2];
,то a - адрес некоторого символьного элемента, a + 1 - адрес элемента в памяти, который в памяти расположен после символьного элемента с адресом a и т.д, а
b - адрес адреса некоторого символьного элемента, b + 1 - адрес следующего адреса другого символьного элемента...
Поэтому запись
C
1
char *a = "Hello";
означает, что по адресу a записывается символьный элемент 'H', в адрес a+1 записывается символьный элемент 'e', ..., по адресу a+5 записывается элемент $\0$(верен ли порядок действий?).
Запись
C
1
char *b[2] = {"Hello", "Hi"};
означает следующее:
1) Создаются адреса b, b + 1 адресов символьных элементов. b[0] и b[1] означает данные, которые лежат в адресах b, b+1, а в последних, как мы знаем, лежат адреса символьных элементов. Значит b[0] - адрес одного символьного элемента, b[1] - другого. Я так понял запись квадратный скобок есть аналог разыменования указателя, то есть мы "разыменовываем" b, b+1, обращаясь данным b[0], b[1] , которые лежат по этим адресам.
2) Для адресов символов b[0], b[1] повторяется алгоритм, разобранный выше.

Кстати, допустим
C
1
2
3
4
5
6
#include <stdio.h>
 
int main(){
    char *b[2] = {"Hello", "Hi"};
    printf("%s %c", b[0] ,b[1]+1);
}
Программа выводит : Hello K
То, что программа вывела строку "Hello" с пробелом понятно - b[0] - указатель на символьный элемент, отождествляемый со строкой, начало которой имеет адрес b[0] совпадающий с адресом первого символа строки. Но почему далее программа вывела символ 'K'? По идее, b[1]+1 - адрес символа 'i', поэтому, учитывая спецификатор с, должен был быть выведен символ 'i'.

Вернуться к обсуждению:
Что такое char *a[2], и в чем его отличие от char *a? C (СИ)
0
Заказать работу у эксперта
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
15.02.2020, 13:45
Готовые ответы и решения:

Чем char отличается от unsigned char?
я наверно тупая,но понять этого не могу.помогите,пожалуйста спасибо

В чем отличие char* s от char *s
В чем отличие char* str; от char *str; ?

В чем отличие двумерного массива типа char от массива указателей на char?
В чем отличие двумерного массива типа char и массива указателей на char ?

Строка: чем отличается строки string, char, char*?
Помогите разобраться,совсем плохо идёт,чем отличается строки string,char,char* И если можно пару...

3
15.02.2020, 13:45
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
15.02.2020, 13:45
Помогаю со студенческими работами здесь

выдает ошибку :[C++ Error] Unit1.cpp(30): E2034 Cannot convert 'char' to 'char *' не понимаю в чем дело
//Дано предложение. Найти наибольшее количество идущих подряд пробелов #include &lt;vcl.h&gt;...

Что такое char**
int main(int argc, char** argv) Что значит именно ** using namespace std; string stroka; ...

Что такое char* ?
char* szString = &quot;Randy&quot;; Объясните, чем в данном случае является szString? Если это...

Чем отличается const char* от char*?
Доброго всем дня! Из матчасти я понимаю, что char* - это указатель массив символов, тогда как...

0
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru