если сравнить commit прилетевшим с удаленного репозитория с этим новым commit, то отличий между ними нет.
o--A
`--B
o--A--B--M1--E
\ / \
-C----D---M2--F
o--A--B
`--B
o--A--M1
/
...-B----C
#define tsk_cpus_allowed(tsk) (&(tsk)->cpus_allowed)
на #define tsk_cpus_allowed(tsk) ((tsk)->cpus_ptr)
. fwrite(array, sizeof(int),array_quantity,in); ... while((num=fgetc(in))!=EOF){ // queue_push(&q,num); printf("%i ",num); }
в начале я добавляю числа 1 2 3 (пример) а из файла получаю 1000 2000 3000
В чем дело?
array_quantity
элементов размером sizeof(int)
каждый, а читаешь из файла посимвольно? IP адреса Source и Destination выводятся одинаковыми
The string is returned in a statically allocated buffer,
which subsequent calls will overwrite.
printf("src address: %s ", inet_ntoa(ip->ip_src));
printf("dest address: %s\n", inet_ntoa(ip->ip_dst));
Насколько хорошим решением является использование сигналов для выведения потоков из спящего режима, и стоит ли для этого использовать ...
Мне нужно текст в text1 преобразовать в число, повысить его на +1 и установить в hwndEdit2
Как можно реализовать, поворот динамического массива (матрица), без доп памяти?
#include <stddef.h>
#include <stdio.h>
typedef int T;
void rotate(T *p, size_t m, size_t n, size_t (*turn)(size_t m, size_t n, size_t idx))
{
size_t i, j, k;
for (i = 0; i < m * n; ++i) {
T tmp0, tmp1;
for (j = 0; j < i; ++j) {
for (k = turn(m, n, j); k != i && k != j; k = turn(m, n, k)) {
}
if (k == i)
break;
}
if (j < i)
continue;
tmp0 = p[i];
for (j = turn(m, n, i); ; j = turn(m, n, j)) {
tmp1 = p[j];
p[j] = tmp0;
tmp0 = tmp1;
if (j == i)
break;
}
}
}
void dump(size_t m, size_t n, T p[m][n])
{
size_t i, j;
for (i = 0; i < m; ++i)
for (j = 0; j < n; ++j)
printf("%d%s", p[i][j], j == n - 1 ? "\n" : ", ");
}
size_t turn_ccw(size_t m, size_t n, size_t idx)
{
return (n - 1 - idx % n) * m + (idx / n);
}
size_t turn_cw(size_t m, size_t n, size_t idx)
{
return (idx % n) * m + m - 1 - (idx / n);
}
#define M 5
#define N 7
int main()
{
size_t i, j;
T a[M][N];
for (i = 0; i < M; ++i)
for (j = 0; j < N; ++j)
a[i][j] = i * N + j;
rotate(&a[0][0], M, N, turn_ccw);
dump(N, M, (T (*)[M])&a[0][0]);
printf("\n");
rotate(&a[0][0], N, M, turn_cw);
dump(M, N, (T (*)[N])&a[0][0]);
}
turn
преобразует линейный индекс элемента из оригинального массива в индекс элемента в повёрнутом массиве..text
.att_syntax
foo:
movb $4, %al
.intel_syntax
mov %al, 4
$ gcc -c att-intel.S
$ objdump -d att-intel.o
att-intel.o: file format elf64-x86-64
Disassembly of section .text:
0000000000000000 <foo>:
0: b0 04 mov $0x4,%al
2: b0 04 mov $0x4,%al
Деасемблирование дало такой результат:
mov ds:0x0,al
Может мне кто-то объяснить что это значит ds:0x0