อ่าคือ สมมติผมมี string ข้อความนึง
1,Zinyx,5,6,7
[/b]
ที่ผมต้องการคือ อยากให้แยกมาเก็บใน Variables
ผมใช้โค้ดแบบนี้
แต่ไม่เวิค
sscanf(str,"%d,%s,%d,%d,%d",id,name,para1,para2,para3);
[/b]
id = 1
name = "Zinyx,5,6,7"
มันเปนงี้อะครับ ขอคำแนะนำด้วยครับ
อ่าคือ สมมติผมมี string ข้อความนึง
1,Zinyx,5,6,7
[/b]
ที่ผมต้องการคือ อยากให้แยกมาเก็บใน Variables
ผมใช้โค้ดแบบนี้
แต่ไม่เวิค
sscanf(str,"%d,%s,%d,%d,%d",id,name,para1,para2,para3);
[/b]
id = 1
name = "Zinyx,5,6,7"
มันเปนงี้อะครับ ขอคำแนะนำด้วยครับ
ผมไม่ค่อยแน่ใจนะคับ ลองวิธีนี้ดูไหมคับ (พอดีผมไม่ได้ลง C++ ในเครื่อง)
เท่าที่ผมดูจากเว็บต่างประเทศ ถ้าเป็นตัวเลข เขาจะใช้ Pointer ในการอ้างอิงนะคับ
อันนี้จากเว็บญี่ปุ่น แต่ผมแปลงเป็นภาษาอังกฤษแทนนะคับ
[code]
#include
[url="http://negimatfc.spaces.live.com"]Please Stop Global Warming[/url]
[url="http://akiakira.elivebox.com"]Aki's tool[/url] [b]Update:[/b] [color=#444444]BASE 64 TOOL[/color]
[b][url="http://akiakira.elivebox.com/akigraph"]akigraph[/url] [/b]- free graph opensource (php)
[img]http://cftsubasa.tirkx.com/quiz/sakura.gif[/img]
ขอบคุณมากครับ แต่
ไม่เป็นผลครับ ที่ได้ออกมาคือ
แต่ พอผมลองเปลี่ยนจาก , เป็น ' ' (สเปซ) ได้ผลครับHello, Zinyx,5,6,7. Your id is 1 And para1 = 4072496, para2 = 4072528, para3 = 2
009315348
[/b]
main()
{
char str[] = "1 Zinyx 5 6 7";
int id, para1, para2, para3;
char name[20];
sscanf(str,"%d %s %d %d %d",&id,name,¶1,¶2,¶3);
printf("Hello, %s. Your id is %d And para1 = %d, para2 = %d, para3 = %d",name,id,para1,para2,para3);
}
[/b]
Output
อื้ม ไม่ค่อยเข้าใจเหมือนกันครับHello, Zinyx. Your id is 1 And para1 = 5, para2 = 6, para3 = 7[/b]
sscanf มันจะตัดได้แต่ white space ครับ
พอเจอ comma มันก็จะคิดว่าเป็น ส่วนหนึ่งของ string
มันก็เลยอ่าน name ได้เป็น Zinyx,5,6,7 น่ะครับ
อ้างอิงจาก
http://www.cplusplus.com/reference/clibrar...dio/sscanf.html
ถ้าอยากให้ตัด comma ได้ ลองใช้ strtok ดูนะครับ
http://www.cplusplus.com/reference/clibrar...ing/strtok.html
b = bit
B = byte
m = Milli
K = Kilo
M = Mega
Mb = Mega Bit(s)
MB = Mega Byte(s)
8 bits = 1 Byte
1024 Bytes = 1 KB
1024 KB = 1 MB
1024 MB = 1 GB
1024 GB = 1 TB
Actions : (View-Readers)
There are no names to display.