Torna indietro   Hardware Upgrade Forum > Software > Programmazione

WoW Forever: la beta è stato uno dei momenti più alti della storia dei videogiochi, e non si ripeterà
WoW Forever: la beta è stato uno dei momenti più alti della storia dei videogiochi, e non si ripeterà
Un mondo affollato e vivo, personaggi destinati a sparire a fine test e nessuno a inseguire l'oggetto giusto. Beta e stress test di World of Warcraft: Forever hanno fatto emergere un roleplay spontaneo, tra danze a Goldshire e code ordinate ai PNG
Oracle AI World 2026: in Europa prima la sovranità, poi la sicurezza e solo dopo l'IA
Oracle AI World 2026: in Europa prima la sovranità, poi la sicurezza e solo dopo l'IA
In tre giorni a Las Vegas Oracle ha presentato agenti che eseguono il lavoro, l'alleanza con OpenAI e un cloud aperto agli acceleratori di tutti. Ma i clienti europei chiedono garanzie prima ancora delle funzionalità
DS N°7 E-Tense: il SUV premium made in Melfi che punta su autonomia e comfort
DS N°7 E-Tense: il SUV premium made in Melfi che punta su autonomia e comfort
Fino a 740 km WLTP con la batteria da 97,2 kWh, sospensioni che leggono la strada con una telecamera e un abitacolo da salotto parigino. La nuova DS N°7 raccoglie l'eredità della DS 7 e la porta, per la prima volta, nel mondo 100% elettrico. Ecco come è fatta, cosa offre e quanto costa.
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 03-08-2013, 11:56   #1
ashtisdale93
Member
 
L'Avatar di ashtisdale93
 
Iscritto dal: May 2008
Città: Torino (TO)
Messaggi: 237
[C] Replicare i permessi di un file

Visto che continuano a propinarmi esercizi con la stessa richiesta e visto che non so proprio dove sbattere la testa chiedo umilmente il vostro aiuto.

La traccia è la seguente:

Sia File1 un file lungo 6 byte.
Scrivere un programma C che accoda il contenuto di File1 a File2, ricevendo da linea di comando i nomi dei file File1 e File2, dove
1) se File2 esiste allora viene accodato a File2 il contenuto di File1,
2) se invece File2 non esiste allora File2 viene prima creato con gli stessi permessi di File1 e dopo avviene l’accodamento.

Come risolvereste il secondo punto? Cioè come faccio a creare un file con gli stessi permessi di un file già esistente?

Grazie mille a chi saprà illuminarmi .
__________________
Microsoft Windows 10 Pro - Fractal Design Define R2 XL - Enermax Platimax 750W - MSI X99S GAMING 9 AC - Noctua NH-D15 - Intel Core i7-5820k - MSI GTX 970 GAMING 4G - 16 GB RAM Corsair Vengeance LPX DDR4 2400Mhz - Samsung 850 Evo 500GB - ASUS PB728QR - Tastiera Ducky Shine 4 - Mouse Logitech G700s
ashtisdale93 è offline   Rispondi citando il messaggio o parte di esso
Old 03-08-2013, 13:14   #2
starfred
Senior Member
 
Iscritto dal: Jul 2011
Messaggi: 381
Ciao, per verificare se un file esiste dai un'occhiata alla funzione access()

Moooolto grezzamente:
Codice:
if( access( fname, F_OK ) == 0 )
 {
   //file esiste
 } 
else 
 {
   //crea file
   //controlla se hai creato
   //apri, scrivi, chiudi
 }
Per il discorso permessi su un sistema operativo unix like ti consiglio di dare un'occhiata alle funzioni fstat() fchmod() fchown()
Su Windows non ti so aiutare.
__________________
Concluso positivamente con: Kamzata, Ducati82, Arus, TheLastRemnant, ghost driver, alexbull1, DanieleRC5, XatiX
starfred è offline   Rispondi citando il messaggio o parte di esso
Old 03-08-2013, 15:25   #3
ashtisdale93
Member
 
L'Avatar di ashtisdale93
 
Iscritto dal: May 2008
Città: Torino (TO)
Messaggi: 237
Ho risolto con stat .

Codice:
#include <sys/stat.h>
#include <stdio.h>
int main()
{
     struct stat buffer;
     mode_t file1_mode;
     if(stat("FILE1",&buffer) != 0)
     {printf("stat error!\n"); return -1;}
     file1_mode = buffer.st_mode;
     umask(file1_mode);

}
__________________
Microsoft Windows 10 Pro - Fractal Design Define R2 XL - Enermax Platimax 750W - MSI X99S GAMING 9 AC - Noctua NH-D15 - Intel Core i7-5820k - MSI GTX 970 GAMING 4G - 16 GB RAM Corsair Vengeance LPX DDR4 2400Mhz - Samsung 850 Evo 500GB - ASUS PB728QR - Tastiera Ducky Shine 4 - Mouse Logitech G700s
ashtisdale93 è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


WoW Forever: la beta è stato uno dei momenti più alti della storia dei videogiochi, e non si ripeterà WoW Forever: la beta è stato uno dei mome...
Oracle AI World 2026: in Europa prima la sovranità, poi la sicurezza e solo dopo l'IA Oracle AI World 2026: in Europa prima la sovrani...
DS N°7 E-Tense: il SUV premium made in Melfi che punta su autonomia e comfort DS N°7 E-Tense: il SUV premium made in Melfi...
Recensione Samsung Galaxy Tab S12 Ultra: non chiamatelo tablet... è molto di più Recensione Samsung Galaxy Tab S12 Ultra: non chi...
Hyundai IONIQ 5 N, l'elettrica che finge di essere termica (e ci riesce da paura) Hyundai IONIQ 5 N, l'elettrica che finge di esse...
Quale futuro per Mass Effect? Tutte le i...
Schermi rotti su iPhone Duo: un report s...
Lo stealer VOLTA chiede a Claude, Kimi e...
Intel e Oracle puntano sulle CPU Xeon pe...
Offerte Amazon da urlo: Mac mini M6 a 89...
Bici elettriche a prezzi da record su Am...
Il boom dell'IA fa salire i costi: HP, A...
Cloudflare: 18,2 milioni di attacchi DDo...
GeForce RTX 2080 Ti con 22 GB di VRAM: f...
Dalla padella... ai server AI: Nvidia va...
1.000 cicli e ancora il 90,4% della capa...
SMS of Death fa crashare Android senza i...
BYD Yangwang U9 Xtreme da 2.977 CV fatta...
Altro che Made in USA: cosa si nasconde ...
Binance riapre dopo il maxi furto: gli u...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 13:13.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v