C 不显示土耳其语字符的代码块
我已将IDE DevC++更改为代码块。我的项目包括土耳其语角色。使用DevC++时,将显示土耳其语字符。但我将IDE DevC++改为代码块,土耳其字符没有显示它们。代码块显示错误消息“编码已更改。保存的文档包含在所选编码中非法的字符。文件的编码已更改为UTF-8,以防止丢失数据。” 请帮帮我。谢谢:)C 不显示土耳其语字符的代码块,c,character-encoding,codeblocks,C,Character Encoding,Codeblocks,我已将IDE DevC++更改为代码块。我的项目包括土耳其语角色。使用DevC++时,将显示土耳其语字符。但我将IDE DevC++改为代码块,土耳其字符没有显示它们。代码块显示错误消息“编码已更改。保存的文档包含在所选编码中非法的字符。文件的编码已更改为UTF-8,以防止丢失数据。” 请帮帮我。谢谢:) #包括 #包括 #包括 #包括 void duzenDegistir(char*dizi,int boy){ srand(时间(空)); int i,a; 字符*温度; 对于(i=0;iset
#包括
#包括
#包括
#包括
void duzenDegistir(char*dizi,int boy){
srand(时间(空));
int i,a;
字符*温度;
对于(i=0;isetlocale(LC_ALL,土耳其语))
Denermisin?请与其他编辑器检查未修改的源文件使用的编码方式。然后将其更改为UTF-8,此编辑器最多只能执行此操作。之后,我希望代码块不会发出呻吟声,而是显示所有字符。
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <locale.h>
void duzenDegistir(char *dizi, int boy){
srand(time(NULL));
int i,a;
char *temp;
for(i=0;i<boy;i++){
a=rand()%boy;
*temp=dizi[i];
dizi[i]=dizi[a];
dizi[a]=*temp;
}
dizi[i+1]='\0';
}
int main(){
setlocale(LC_ALL, "");
srand((unsigned int)(time(NULL)));
int k_sayi,i,lang;
char kucuk_harf[26]="abcdefghijklmnoprstuvwxyz";
char buyuk_harf[26]="ABCDEFGHIJKLMNOPRSTUVWXYZ";
char sayilar[11]="1234567890";
char ozel_karakter[13]="!'^+%&/=?_*";
char *pass, *p;
char kontrol_buyuk, kontrol_sayi, kontrol_okarakter, secim, duzen;
printf("Please select the language: (en: 1 /tr: 2): ");
scanf("%d",&lang);
if(lang==1){
do{
printf("How many characters can the password ?: ");
scanf("%d",&k_sayi);
printf("Upper-case letter? (y/n): ");
scanf(" %c",&kontrol_buyuk);
printf("Numbers? (y/n): ");
scanf(" %c",&kontrol_sayi);
printf("Special characthers?: ");
scanf(" %c", &kontrol_okarakter);
pass=(char *)malloc(k_sayi*sizeof(char));
if(kontrol_buyuk=='y'&&kontrol_sayi=='y'&&kontrol_okarakter=='y'){
for(i=0;i<k_sayi;i++){
pass[i]=kucuk_harf[rand()%(sizeof kucuk_harf-1)];
if(i>1){
while(i%2==1){
pass[i]=buyuk_harf[rand()%(sizeof buyuk_harf-1)];
break;
}
while(i%3==2){
pass[i]=sayilar[rand()%(sizeof sayilar-1)];
break;
}
while(i%(k_sayi-2)==2){
pass[i]=ozel_karakter[rand()%(sizeof ozel_karakter-1)];
break;
}
}
}
}
if(kontrol_buyuk=='n'&&kontrol_sayi=='y'){
for(i=0;i<k_sayi;i++){
pass[i]=kucuk_harf[rand()%(sizeof kucuk_harf-1)];
if(i>1){
while(i%3==2){
pass[i]=sayilar[rand()%(sizeof sayilar-1)];
break;
}
}
}
}
if(kontrol_buyuk=='y'&&kontrol_sayi=='n'){
for(i=0;i<k_sayi;i++){
pass[i]=kucuk_harf[rand()%(sizeof kucuk_harf-1)];
if(i>1){
while(i%2==1){
pass[i]=buyuk_harf[rand()%(sizeof buyuk_harf-1)];
break;
}
}
}
}
if(kontrol_buyuk=='n'&&kontrol_sayi=='n'){
printf("This option will generate a low-security password. You should not forget the upper-case letters and numbers in your passwords ...\n");
for(i=0;i<k_sayi;i++){
pass[i]=kucuk_harf[rand()%(sizeof kucuk_harf-1)];
}
}
pass[i]='\0'; // Son indisteki içeriği NULL'a eşitledim ki dizginin sonunu belirtelim.
printf("\n\n==> Your Password: %s\n\n",pass);
printf("Would you like to change the password layout? (y/n): ");
scanf(" %c",&duzen);
if(duzen=='y'){
while(duzen=='y'){
duzenDegistir(pass, k_sayi);
printf("%s\n",pass);
printf("Would you like to change the password layout again? (y/n): ");
scanf(" %c",&duzen);
}
}
free(pass);
printf("\nWould you like to create the new password? (y/n): ");
scanf(" %c",&secim);
if(secim=='n'){
printf("\n\nRemember to keep your passwords and change them frequently. See you again...\n\n");
}
}while(secim=='y');
}
if(lang==2){
do{
printf("Parola kaç karakterli olsun?: ");
scanf("%d",&k_sayi);
printf("Büyük harf olsun mu? (y/n): ");
scanf(" %c",&kontrol_buyuk);
printf("Sayı olsun mu? (y/n): ");
scanf(" %c",&kontrol_sayi);
printf("Özel karakter olsun mu?: ");
scanf(" %c", &kontrol_okarakter);
pass=(char *)malloc(k_sayi*sizeof(char));
if(kontrol_buyuk=='y'&&kontrol_sayi=='y'&&kontrol_okarakter=='y'){
for(i=0;i<k_sayi;i++){
pass[i]=kucuk_harf[rand()%(sizeof kucuk_harf-1)];
if(i>1){
while(i%2==1){
pass[i]=buyuk_harf[rand()%(sizeof buyuk_harf-1)];
break;
}
while(i%3==2){
pass[i]=sayilar[rand()%(sizeof sayilar-1)];
break;
}
while(i%(k_sayi-2)==2){
pass[i]=ozel_karakter[rand()%(sizeof ozel_karakter-1)];
break;
}
}
}
}
if(kontrol_buyuk=='n'&&kontrol_sayi=='y'){
for(i=0;i<k_sayi;i++){
pass[i]=kucuk_harf[rand()%(sizeof kucuk_harf-1)];
if(i>1){
while(i%3==2){
pass[i]=sayilar[rand()%(sizeof sayilar-1)];
break;
}
}
}
}
if(kontrol_buyuk=='y'&&kontrol_sayi=='n'){
for(i=0;i<k_sayi;i++){
pass[i]=kucuk_harf[rand()%(sizeof kucuk_harf-1)];
if(i>1){
while(i%2==1){
pass[i]=buyuk_harf[rand()%(sizeof buyuk_harf-1)];
break;
}
}
}
}
if(kontrol_buyuk=='n'&&kontrol_sayi=='n'){
printf("Bu seçenek düşük güvenlikli parola oluşturacaktır. Parolalarınızda büyük harf ve sayıyı ihmal etmemelisiniz...\n");
for(i=0;i<k_sayi;i++){
pass[i]=kucuk_harf[rand()%(sizeof kucuk_harf-1)];
}
}
pass[i]='\0'; // Son indisteki içeriği NULL'a eşitledim ki dizginin sonunu belirtelim.
printf("\n\n==> Parolanız: %s\n\n",pass);
printf("Parola düzenini değiştirmek ister misiniz? (y/n): ");
scanf(" %c",&duzen);
if(duzen=='y'){
while(duzen=='y'){
duzenDegistir(pass, k_sayi);
printf("%s\n",pass);
printf("Parola düzenini tekrar değiştirmek istermisiniz? (y/n): ");
scanf(" %c",&duzen);
}
}
free(pass);
printf("\nYeni parola oluşturmak ister misiniz? (y/n): ");
scanf(" %c",&secim);
if(secim=='n'){
printf("\n\nParolalarınızı saklamayı ve sık sık değiştirmeyi unutmayınız...\n\n");
}
}while(secim=='y');
}
return 0;
}