Аргумент NULL - C (СИ)
Формулировка задачи:
Код выдают ошибки, не могу разобраться с аргументами
Ошибки
Код
CPP файл
https://yadi.sk/i/TDd5C0H53FoKnu
[ 50%] Building CXX object CMakeFiles/untitled4.dir/main.cpp.obj
C:\Users\MegaR\CLionProjects\untitled4\main.cpp: In function 'int main()':
C:\Users\MegaR\CLionProjects\untitled4\main.cpp:165:37: warning: passing NULL to non-pointer argument 2 of 'void* CreateMutexA(LPSECURITY_ATTRIBUTES, BOOL, LPCSTR)' [-Wconversion-null]
hOch[i]=CreateMutex(NULL,NULL,NULL);
^
C:\Users\MegaR\CLionProjects\untitled4\main.cpp:169:56: error: invalid conversion from 'DWORD (__attribute__((__stdcall__)) *)() {aka long unsigned int (__attribute__((__stdcall__)) *)()}' to 'LPTHREAD_START_ROUTINE {aka long unsigned int (__attribute__((__stdcall__)) *)(void*)}' [-fpermissive]
hCheli[i]=CreateThread(NULL,4096,Chel,NULL,NULL,&kl);
^
In file included from c:\mingw\include\windows.h:44:0,
from C:\Users\MegaR\CLionProjects\untitled4\main.cpp:2:
c:\mingw\include\winbase.h:1424:26: note: initializing argument 3 of 'void* CreateThread(LPSECURITY_ATTRIBUTES, DWORD, LPTHREAD_START_ROUTINE, PVOID, DWORD, PDWORD)'
WINBASEAPI HANDLE WINAPI CreateThread(LPSECURITY_ATTRIBUTES,DWORD,LPTHREAD_START_ROUTINE,PVOID,DWORD,PDWORD);
^
C:\Users\MegaR\CLionProjects\untitled4\main.cpp:169:56: warning: passing NULL to non-pointer argument 5 of 'void* CreateThread(LPSECURITY_ATTRIBUTES, DWORD, LPTHREAD_START_ROUTINE, PVOID, DWORD, PDWORD)' [-Wconversion-null]
hCheli[i]=CreateThread(NULL,4096,Chel,NULL,NULL,&kl);
do { k.X=40; k.Y=1; //усанавливаем позицию для SetConsoleCursorPosition(hout,k) ; //надписи printf (" Vvedite chislo lydey do 10 "); //Введите число людей scanf("%d",&S); //сканируем число for (i=0;i<15;i++) //создание семафора очереди hOch[i]=CreateMutex(NULL,NULL,NULL); for(i=0;i<S;i++) //запуск нитей-"людей" { hCheli[i]=CreateThread(NULL,4096,Chel,NULL,NULL,&kl); Sleep(500); } } }
Решение задачи: «Аргумент NULL»
textual
Листинг программы
WriteConsoleOutputCharacter(hout,"_",1,k,&pp);
Объяснение кода листинга программы
В данном коде выполняется запись в консоль символа '_' с помощью функции WriteConsoleOutputCharacter. Список действий:
- В качестве аргумента функции WriteConsoleOutputCharacter передается символ '_'.
- Аргумент 1 обозначает, что необходимо записать символ только один раз.
- Аргумент 2 - это дескриптор файла, который обычно используется для вывода на консоль.
- Аргумент 3 - это код символа, который должен быть записан.
- Аргумент 4 - это переменная, которая содержит позицию, в которой необходимо записать символ.
- Аргумент 5 - это указатель на переменную, которая содержит позицию, в которой необходимо записать символ.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д