Hirdetés
- Luck Dragon: Asszociációs játék. :)
- hcl: GPT diszk kisebbre klónozása
- sziku69: Fűzzük össze a szavakat :)
- sziku69: Szólánc.
- gban: Ingyen kellene, de tegnapra
- lkristóf: Prohardver fórum userscript – hogy lásd, mikor neked válaszoltak
- Elektromos rásegítésű kerékpárok
- Meggyi001: Áram nélkül....méltóság nélkül.....
- Mr Dini: Mindent a StreamSharkról!
- D1Rect: Nagy "hülyétkapokazapróktól" topik
Új hozzászólás Aktív témák
-
gregory91
senior tag
Csak úgy érdekességként:
#include <stdio.h>
int main (){
char name[20];
char chars[5]={'a','b','c','d','e'};
int yes=0;
printf("Enter name: ");
scanf("%s",name);
for(int i=0;i<sizeof(name)/sizeof(char);i++){
for(int j=0;j<sizeof(chars)/sizeof(char);j++){
if(name[i]==chars[j]){
yes=1;}
}
}
printf("%s",yes?"YES\n":"NO\n");
printf("%ld name",sizeof(name)/sizeof(char));
printf("%ld chars",sizeof(chars)/sizeof(char));
return 0;} -
pmonitor
aktív tag
Én csak tanulmányozásra írtam a kódot, hogy az strstr() miért is nem működik karakterekre. Mert a karakter nem kezelhető strstr()-el. Viszont a ciklust nem tudod elkerülni, akár az ststr()-t, akár az strchr()-t használod. Egyébként én is elkövettem 1 hibát. A break-re nincs szükség, mert az elején a feltételben vizsgálom.
-
kovisoft
őstag
Ha karaktereket keresel egyesével stringben, akkor javaslom az strchr() használatát strstr() helyett, mert az strstr()-nek keresőstringet kell megadni, ezért nem fog működni const char restrictions[5] = {'a', 'b', 'c'} formával. Ezt láthatod is pmonitor kódjában, ha majd megnézed.
-
kovisoft
őstag
Azért nem működik így, mert az strstr() egy összefüggő rész-stringet keres meg az adott stringben, te pedig azt szeretnéd, hogy a megadott karaktereket külön-külön nézze meg, hogy benne vannak-e valahol a stringben, nem feltétlenül összefüggően és nem feltétlenül ugyanabban a sorrendben. Pl. ha "abc"-t keresel, azt az strstr() megtalálja az "aabcc"-ben, de nem találja meg az "aabbcc"-ben, mert ez utóbbinak az "abc" nem rész-stringje.
Azt kell csinálnod, hogy egy ciklussal végigmész a restrictions[] karakterein, és mindegyikre megnézed, hogy benne van-e a name-ben az adott karakter.
Szerk: lassú voltam
-
pmonitor
aktív tag
int main()
{
const char name[20];
const char restrictions[7] = "a\0b\0c\0";
printf("Enter name: ");
scanf("%s", name);
int i, ok = 1;
for (i = 0; restrictions[i] && ok; i += 2)
{
if (strstr(name, &restrictions[i]) != NULL)
{
ok = !ok;
break;
}
}
if (ok) printf("Name: %s\n", name);
else printf("Not a valid name!\n");
return 0;
}
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- LG 27GX790A-B 2K-480HZ-0.03MS 3 ÉV GYÁRTOI GARANCIA
- Szolid RDY2PLAY Gamer PC - Ryzen 2600 // 16GB DDR4 // GTX 1080 // 512SSD + 2x1TB HDD // WIN 11 PRO
- AMD Ryzen 5 1600X AM4
- Eladó Apple iPad (2020) 2. generáció Cellular + WiFi 512 GB
- iPhone 16 128GB gyári független hibátlan 2028.10.20. Apple jótállás
- BESZÁMÍTÁS! ASUS ROG STRIX B250F GAMING alaplap garanciával hibátlan működéssel
- Apple iPad Air 5 13' 128GB (2029.02.09-ig Garancia) Csak kibontva volt, Aktiválatlan!
- Ultimate előfizetés akár 3611 Ft/hó áron! Azonnali, automatizált aktiválással, csak Nálam!
- 27% - MSI MPG A1000G PCIE5 / ATX 3.0 1000W 80 PLUS Gold Tápegység!
- Eladó/BONTATLAN Lenovo LOQ i7-13650HX 16GB 1TB RTX 4060 8GB
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
