Другие языки программирования и технологии

Как онулировать тип переменной char например был lol[3]="cok" а стал просто lol[3]?

строка в си определяется как массив char заканчивающийся символом конца строки '\0'. "Обнулить тип переменной" нельзя, эта фраза вообще лишена всякого смысла. Если вы хотите обнулить строку хранящуюся в массиве типа char, то просто запишите первым символом \0. Пример: http://ideone.com/Lm9C7c
И кстате в массиве из трёх символов как у вас в примере строка "lol" НЕ ПОМЕЩАЕТСЯ! Такая запись как у вас является ошибкой т. к. там не хватает места для символа конца строки! В результате вы выходите за границы массива что является одной из самых опасных ошибок в си.
Например VS код
char cstr[3] = { "lol" };
или
char cstr[3] = "lol";
просто не компилирует, а выдаёт ошибку "error C2117: 'cstr' : array bounds overflow"

P.S. Небольшое дополнение - мой пример корректен для c++. Для C всё аналогично, но есть небольшое отличие - символ конца строки автоматически при инициализации не включается если для него не хватает места. В результате выхода за границы массива формально нет, но ваш код всеровно является ошибочным. Язык вы не указали, так что пока не добался до вашего предыдущего вопроса не думал что речь идёт про чистый си. Короче для си всё будет примерно аналогично. Ну и функции вывода там printf, а не cout. А лучше почитайте статейку про строковые литералы в си: www. cyberforum .ru/blogs/18334/blog97.html
Юрий Шабанов
Юрий Шабанов
46 815
Лучший ответ
Тип переменной в данном случае не изменяется. Больше того, он вообще даже исходно не соответствует строке "cok".
P.S. С "поправкой" еще хуже...
Лучше изложи целиком на обычном языке, что нужно, не оперируя непонятными тебе терминами из языка программирования.
Да, и не забудь написать, на каком языке. Инициализации массивов в С и в C++ отличаются.
Как?
Vlad Tacu
Vlad Tacu
64 519
lol[0]=0;
lol[1]=0;
lol[2]=0;
Ну смысла не вижу, но все же. Первое это почитайте про memset http://www.firststeps.ru/mfc/detail/r.php?15 или как вариант просто пробелами заполнить. char buffer[3];
buffer = " ";
Гена Тарасов
Гена Тарасов
15 388
Госпади, что я прочитал только что
Ayan _________.
Ayan _________.
787
Ayan _________. Можно присвоить lol новый массив, типa lol = new char[3];
но какой в этом смысл
Станислав Макаров Ну, примерно "как аннулировать тип животного, чтобы из мухи получить жирафа, умеющего плавать под водой" ;)