- 1
Забаньте DOKTOPuHXO
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+6
Забаньте DOKTOPuHXO
−5
Сема. Я чота на винде нажал, теперь у меня любая клавиша - горячая, не могу не написать нихуя
Даже в сонсоле не могу нихуя, что за хуйня? Опять винду переустанавливать?
В ЛИНУКСЕ ТАКОЙ ХУЙНИ НЕБЫЛО!
0
procedure TMainForm.FormCreate(Sender: TObject);
var
s : String;
reg : TRegistry;
begin
SetLength (s, Max_Path);
SHGetSpecialFolderPath (0, PChar(s), CSIDL_COMMON_APPDATA, false);
AppDataPath := s + '\Test\';
ShowMessage (AppDATAPath);
end;
, где AppDataPath : string;
Только вот в AppDataPath находиться только S, а должно быть s + '\Test\'
Вопрос: Почему?
Заранее благодарен
Потому что нельзя передавать паскалевскую строку в виде PChar в функцию, которая будет её там модифицировать. Нужно делать так:
Код:
var
s : array[ 0..MAX_PATH ] of Char;
reg : TRegistry;
begin
s[ 0 ] := #0;
SHGetSpecialFolderPath (0, s, CSIDL_COMMON_APPDATA, false);
AppDataPath := s + '\Test\';
ShowMessage (AppDATAPath);
end;
http://www.programmersforum.ru/showthread.php?t=84319
@Потому что нельзя передавать паскалевскую строку в виде PChar в функцию, которая будет её там модифицировать.
Ахуенно крутой спец по строкам.
Кстати, https://primechaniya.ru/home/news/oktyabr-2018/v-tatarstane-18-podrostkov-otravilis-kitajskimi-duhami/
−1
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
struct masterRecord{ int Number; char Name[20]; char Surname[20]; char addres[30]; char TelNumber[15]; double indebtedness; double credit_limit; double cash_payments; };
typedef struct masterRecord Data;
int main(void){
int choice = 0;
void masterWrite(FILE *ofPTR, Data Client ) ,transactionWrite(FILE *ofPTR, Data transfer ) , blackRecord(FILE *ofPTR, FILE *ofPTR_2 , FILE *blackrecord , Data client_data , Data transfer ) ;
FILE *Ptr, *Ptr_2 , *blackrecord ;
Data client_data, transfer ;
printf("%s", "please enter action\n1 enter data client:\n2 enter data transaction:\n3 update base\n" );
while ( scanf("%d", &choice ) != -1 ) {
switch( choice ) {
case 1:
Ptr = fopen("record.dat", "r+" );
if(Ptr == NULL ){
puts("Not acess");
}
else{
masterWrite( Ptr , client_data);
fclose(Ptr);
}
break;
case 2:
Ptr = fopen("transaction.dat", "r+" );
if(Ptr == NULL ){
puts("Not acess");
}
else{
transactionWrite( Ptr, transfer );
fclose(Ptr);
}
break;
case 3:
Ptr = fopen( "record.dat", "r" );
Ptr_2 = fopen("transaction.dat", "r" );
blackrecord = fopen("blackrecord.dat", "w" );
if( Ptr == NULL || Ptr_2 == NULL || blackRecord == NULL ){
puts("exit");
}
else{
blackRecord( Ptr, Ptr_2 , blackrecord , client_data , transfer );
fclose(Ptr);
fclose(Ptr_2);
fclose(blackrecord);
}
break;
default:
puts("error");
break ;
}
printf("%s", "please enter action\n1 enter data client:\n2 enter data transaction:\n3 update base\n" );
}
return 0;
}
void masterWrite(FILE *ofPTR , Data Client ) {
printf("%s\n%s\n%s\n%s\n%s\n%s\n%s\n%s\n\n",
"1 Number account: ",
"2 Client name: ",
"3 Surname: ",
"4 Addres client: ",
"5 Client Telnum: ",
"6 Client indebtedness: ",
"7 Client credit limit: ",
"8 Client cash payments: " );
while( scanf("%d%s%s%s%s%lf%lf%lf", &Client.Number, Client.Name, Client.Surname, Client.addres, Client.TelNumber, &Client.indebtedness, &Client.credit_limit , &Client.cash_payments ) != -1 ){
fprintf( ofPTR, "%-12d%-11s%-11s%-16s%20s%12.2f%12.2f%12.2f\n", Client.Number, Client.Name, Client.Surname, Client.addres, Client.TelNumber, Client.indebtedness, Client.credit_limit , Client.cash_payments ) ;
printf("%s\n%s\n%s\n%s\n%s\n%s\n%s\n%s\n\n",
"1 Number account: ",
"2 Client name: ",
"3 Surname: ",
"4 Addres client: ",
"5 Client Telnum: ",
"6 Client indebtedness: ",
"7 Client credit limit: ",
"9 Client cash payments:"
);
} }
void transactionWrite(FILE *ofPtr, Data transfer ){
printf("%s\n%s\n",
"1 Number account: ",
"2 Client cash payments: ");
while(scanf("%d %lf" , &transfer.Number , &transfer.cash_payments ) != -1 ){
fprintf( ofPtr, "%-3d%-6.2f\n", transfer.Number, transfer.cash_payments ) ;
printf("%s\n%s\n",
"1 Number account:",
"2 Client cash payments: "
);
} }
void blackRecord(FILE *ofPTR, FILE *ofPTR_2 , FILE *blackrecord , Data client_data , Data transfer ){
while(fscanf( ofPTR , "%d%s%s%s%s%lf%lf%lf", &client_data.Number , client_data.Name , client_data.Surname , client_data.addres, client_data.TelNumber, &client_data.indebtedness, &client_data.credit_limit, &client_data.cash_payments) != -1 ) {
while ( fscanf( ofPTR_2 , "%d %lf", &transfer.Number , &transfer.cash_payments ) != -1 ){
if( client_data.Number == transfer.Number && transfer.cash_payments != 0 ){
client_data.credit_limit += transfer.cash_payments;
}
}
fprintf(blackrecord ,"%-12d%-11s%-11s%-16s%20s%12.2f%12.2f%12.2f\n", client_data.Number, client_data.Name, client_data.Surname, client_data.addres, client_data.TelNumber, client_data.indebtedness, client_data.credit_limit , client_data.cash_payments ) ;
rewind( ofPTR_2 );
} }
В новом Сорокине мне больше всего понравились "Фиолетовые лебеди".
−10
https://i.imgur.com/2GTA40l.png
−12
Политота #5
#1: https://govnokod.ru/15804 http://govnokod.xyz/_15804/ (не открывается)
#2: https://govnokod.ru/19910 http://govnokod.xyz/_19910/
#3: https://govnokod.ru/23643 http://govnokod.xyz/_23643/
#4: https://govnokod.ru/24822 (потер пидарас сракер) http://govnokod.xyz/_24822/
Русня, сасай!
−12
IT Оффтоп #9
#1: http://govnokod.ru/18142 http://govnokod.xyz/_18142
#2: http://govnokod.ru/18378 http://govnokod.xyz/_18378
#3: http://govnokod.ru/19667 http://govnokod.xyz/_19667
#4: http://govnokod.ru/21160 http://govnokod.xyz/_21160
#5: http://govnokod.ru/21772 http://govnokod.xyz/_21772
#6: http://govnokod.ru/24063 http://govnokod.xyz/_24063
#7: http://govnokod.ru/24538 http://govnokod.xyz/_24538
#8: http://govnokod.ru/24815 (потёр пидор сракер) http://govnokod.xyz/_24815/
−12
#Было:
sorted(lst, key=lambda x: x['key'])
#или
sorted(lst, key=operator.itemgetter('key')
#стало:
sorted(lst, key=S_['key'])
Говнокоданы, как вам такая идея?
−10
val = atoi(curstr);
count = 0;
while (val) {
buf[count] = (val & 0x7f);
val = val >> 7;
count++;
}
Ноль не число.
Отсюда:
https://dxr.mozilla.org/mozilla-central/source/security/nss/cmd/oidcalc/oidcalc.c
−9
BOOL ShaderElement::equal(ShaderElement* S)
{
if (nullptr == S && nullptr == this)
return TRUE;
if (nullptr == S || nullptr == this)
return FALSE;
return equal(*S);
}
https://www.linux.org.ru/forum/development/14512625