arr = nullptr
или arr += 5
это модификация, а как теперь известно, массив (имя массива) не является mod. lvalue, следовательно ничего не сработает. ++arr
, чтобы получить обратно адрес головной элемент, можно было бы использовать декремент. *(arr + i)
хотелось бы заменить на *(arr++)
. Смысл взять указатель и помещать в него адрес следующего элемента. "Нельзя" значит нельзя...видимо не разрешено стандартом, раз выдает ошибку. for
если вас это смущалоconst elements = document.querySelectorAll(".post *");
for (let i = 0; i < elements.length; i++) {
let element = elements[i];
if (element.hasAttributes()) {
let attributes = element.attributes;
for (let i = 0; i < attributes.length; i++) {
if (attributes[i].name !== "href") {
element.removeAttribute(attributes[i].name);
}
}
}
}
forEach
для того чтобы перебрать коллекцию последовательно с шагом 1 в прямом порядке. (можно заменить на любой цикл с подобной реализацией).for
для того чтобы можно было перебрать коллекцию в обратном порядке (но и i
тогда нужно инициализировать e.length - 1
если данная переменная будет использоваться как индекс коллекции).<ul>
<li>1.1</li>
<li>1.2</li>
<li>1.3</li>
<li>1.4</li>
<li>1.5</li>
</ul>
<ul>
<li>2.1</li>
<li>2.2</li>
<li>2.3</li>
<li>2.4</li>
<li>2.5</li>
</ul>
<ul>
<li>3.1</li>
<li>3.2</li>
<li>3.3</li>
<li>3.4</li>
<li>3.5</li>
</ul>
const uls = document.querySelectorAll("ul");
uls.forEach(ul => {
let lis = ul.querySelectorAll("li");
for (let i = lis.length - 1; i >= 0; i--) {
console.log(lis[i]);
}
console.log("------------------");
});
// <li>1.5</li>
// <li>1.4</li>
// <li>1.3</li>
// <li>1.2</li>
// <li>1.1</li>
// ------------------
// <li>2.5</li>
// <li>2.4</li>
// <li>2.3</li>
// <li>2.2</li>
// <li>2.1</li>
// ------------------
// <li>3.5</li>
// <li>3.4</li>
// <li>3.3</li>
// <li>3.2</li>
// <li>3.1</li>
// ------------------
char * strchr( const char * string, int symbol);
char * find_space(const char * string)
{
if (string == nullptr || strlen(string) == 0) return nullptr;
while (*string && *string != ' ')
string++;
if (*string != '\0')
return (char *) string;
}
const char * find_space(const char * string)
{
while (*string && *string != ' ')
string++;
if (*string != '\0')
return string;
return NULL;
}
return &str[i];
вот так надо да?const char * find_space(const char * string)
{
while (*string)
if (*string++ == ' ')
return string;
return NULL;
}
Вот так получается?