switch(1){ case 1: double d = 1; //ошибка }
Почему нельзя инициализировать в case?
It is possible to transfer into a block, but not in a way that bypasses declarations
with initialization. A program that jumps from a point where a local variable with
automatic storage duration is not in scope to a point where it is in scope is ill-formed
unless the variable has POD type (3.9) and is declared without an initializer.
Как объявить их так, чтобы избежать подобных ошибок?
class someClass {
public:
void someClassTool();
int variableInClass = 5;
};
Someclass someclass;
void someUniversalTool()
{
int variable1 = someClass.variableInClass ;
//some additional code
}
void SomeClass::someClassTool()
{
someUniversalTool();
//some additional code
}
double * func(double *p, int a, int b) { double **p1 = &p; *(int*)p = a; *(int*)p++ = b; return *p1; }
void func(double *p, int a, int b)
{
*(int*)p = a;
*((int*)p + 1) = b;
}
void func(double *p, int a, int b)
{
memcpy(p, &a, 4);
memcpy((char *)p + 4, b, 4);
}
float del (float a, float b)
{
float res;
...
res = ...;
....
return res;
}
....
float result = del (num1, num2);
что делает "return res" во втором куске кода? То есть в переменную res записывается деление числа А и Б. А потом оно куда-то там возвращается..
1. Как влияет полином на CRC?
2. Существует ли возможность скорректировать алгоритм или полином так что бы результаты crc были определенном диапазоне? например от 0x0 - 0xafffffff.
3. Скорректируйте алгоритм так что бы результаты были всегда внутри диапазона 0x0-0xeffffffff
Подскажите как можно реализовать программно текстовый протокол SCPI?
Есть синонимы команд, есть не обязательные параметры, параметры могут быть, могут не быть, может быть сразу несколько. Как это всё обрабатывать и проверять не пытается ли пользовать ввести несуществующую команду?
gdb выдает следующее
char* command; while(strcmp(command, "exit") == 1);
Почему сменяется группа при изменении содержимого файла?
int k = n / 2; int l = c / 2; for (int i = 0; i <= k; i++) { for (int j = 0; j <= l; j++) { int temp = a[i][j]; a[i][j] = a[i + k][j + l]; a[i + k][j + l] = temp; cout << temp << " "; } }
int k = (n + 1) / 2;
int l = (c + 1) / 2;
for (int i = 0; i < n / 2; i++)
{
for (int j = 0; j < c / 2; j++)
{
int temp = a[i][j];
a[i][j] = a[i + k][j + l];
a[i + k][j + l] = temp;
cout << temp << " ";
}
}