-
Fototrend
Új hozzászólás Aktív témák
-
sghc_toma
senior tag
válasz
Draut_HeV #3738 üzenetére
mindenkeppen C-ben szeretned megoldani? a C++-os string-et nem hasznalhatod? azzal igy meg lehet oldani:
#include <iostream>
using std::string;
// ...
string str = "<H1>Valami szoveg</H1>\n<H2>(Masik szoveg)</H2>";
size_t i = str.find("</H1>\n<H2>");
string str1 = str.substr(4, i - 4);
string str2 = str.substr(i + 11, str.length() - i - 17);
// ... -
sghc_toma
senior tag
válasz
Draut_HeV #3722 üzenetére
biztonsagosabb, mert ved a buffer overflow-k ellen azzal, hogy meg kell adni mereteket a fuggvenyeknek..
idezet az MSDN Library idevago oldalarol:
"The main difference between the secure functions (with the _s suffix) and the older functions is that the secure functions require the size of each c, C, s, S and [ type field to be passed as an argument immediately following the variable."
ennek megfeleloen az utolso sor igy nez ki helyesen fscanf_s-sel:fscanf_s(file, "%[^\t] \t %[^\t] \t %[^\t] \t %d \n", adat0, 64, adat1, 128, adat2, 256, &i);
-
-
válasz
Draut_HeV #3713 üzenetére
Hali!
Mivel a gets(), scanf(), printf() függvények alkalmasak az ékezetes karakterek be/kivitelére, ezért azt gondolom, hogy az a problémád, amikor előre kellene definiálni egy stringet pl
char s[80]="öüóőúéáűí", stb
Sajnos C-ben(konzol alkalmazásnál) beépített rutinról nem tudok, ami ASCII konverziót hajtana végre(de lehet, hogy más igen).
Ha más nem tud valami okosabbat javasolni, akkor esetleg írjj egy kis progit, ami előállítja a szükséges adatokat, példul:1. tömb neve: s
2. tömb mérete: 80
3. tömb adatok: íéáűőúöüó
4. Ebből meg előállítja ezt:
unsigned char z[80]={0xa1,0x82,0xa0,0xfb,0x8b,0xa3,0x94,0x81,0xa2,0x00};
5. hozzáfűzi a C fájlod végéhez, ahonnan csak át kell másolni kézzel(ctrl+c, ctrl+v)VladimírR
C/CPP-ben ha tudod, hogy műveleteket akarsz végrehajtani az adott változóval, és az is egyértelmű, hogy törtszám is lehet az eredmény, akkor minden esetben lebegőpontos típust használj(float, double, long double), ezzel sok fejtöréstől lehet megszabadulni...
(amúgy meg egy float típust simán használhatsz ciklusszámlálónak is, ott nem reklamál a fordító, hogy miért nem INT típusú a ciklusszámláló)
Fire.
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
- Apple iPhone 14 128GB, Kártyafüggetlen, 1 Év Garanciával
- Csere-Beszámítás! Asus Tuf Gamer laptop! R7 3750H / GTX 1650 / 16GB DDR4 / 500GB SSD
- Xiaomi Redmi Note 10 Pro 128GB, Kártyafüggetlen, 1 Év Garanciával
- Menő retró konfig: Q9550, Gigabyte P43, 4GB RAM, ASUS GT730,
- Samsung Galaxy S23 Plus 256 GB Kártyafüggetlen 1Év Garanciával
Állásajánlatok
Cég: CAMERA-PRO Hungary Kft
Város: Budapest
Cég: PC Trade Systems Kft.
Város: Szeged