Unable to open <filename.c> trong vscode khi debug

Mk đang code để test thử hàm strtok trong C trên vscode, khi run nó báo là segmentation fault (core dumped) :frowning: .
Khi debug thì nó báo cái này : image
Lên github họ bảo là do cái tasks.json, mà sửa đi sửa lại bn lần cx bị. Đây là tasks.json của mk:


Mn giúp mk fix đc ko ạ !!!

1 Like

cho mình xin file launch.json và source code để thêm thông tin

btw, bạn nên xem config ở đây: https://code.visualstudio.com/docs/cpp/config-linux (gcc + linux)

3 Likes



đây ạ

nhìn sơ không sai, với test trên máy công ty (macOs + clang) thì debug bình thường.
chắc tối test máy nhà linux sau.

với bạn sai ở chỗ char *str = "", nó phải là char str[] = "1 2 ..."

2 Likes

mà sao phải là array mà ko là string constant ạ. Mk sửa lại thì ok ạ !!! Cảm ơn bn nhiều nhé :))

strtok nhận vào 1 chuỗi chỉnh sửa được.
char *str = "xyz" là 1 con trỏ tới chuỗi hằng "xyz" ko chỉnh sửa được nên bị lỗi
char str[] = "123" tức khởi tạo mảng str có value '1','2','3'

muốn thử thì cứ in ra 2 giá trị của str trc và sau khi strtok là thấy

4 Likes

cảm ơn bn nhiều nhé :))

Để strtok xuất từng token thì nó phải sửa chuỗi của bạn (đánh dấu kết thúc) :smiley:

4 Likes
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?